/// <summary> /// 向收费明细表中增加一条记录 /// </summary> /// <param name="item"></param> /// <param name="InpatientNO">住院流水号</param> /// <param name="DeptCode">科室编码</param> /// <param name="ApplyNO">手术申请号</param> /// <returns></returns> public int Insert(Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList item, string InpatientNO, string DeptCode, string ApplyNO) { string strSQL = ""; if (this.Sql.GetSql("Fee.TemporaryFee.Insert", ref strSQL) == -1) { return(-1); } try { string[] strParm = new string[8]; //取参数列表 strParm[0] = InpatientNO; //流水号 strParm[1] = item.Item.ID; //项目编码 strParm[3] = item.FTRate.ItemRate.ToString(); //比率 strParm[2] = item.Item.Qty.ToString(); //数量 strParm[4] = DeptCode; //科室 strParm[5] = ApplyNO; //手术申请号 strParm[6] = this.Operator.ID; //操作员编码 strParm[7] = item.Item.Price.ToString(); //价格 strSQL = string.Format(strSQL, strParm); //替换SQL语句中的参数。 } catch (Exception ex) { this.Err = "付数值时候出错!" + ex.Message; this.WriteErr(); return(-1); } return(this.ExecNoQuery(strSQL)); }
/// <summary> /// 显示费用品信息 /// </summary> /// <returns></returns> protected virtual int DisplayDrugDetail(string inpatientNO) { DateTime fromDate = Neusoft.FrameWork.Function.NConvert.ToDateTime("1900-01-01"); DateTime endDate = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.InpatientManager.GetSysDateTime()); ArrayList alDrung = new ArrayList(); Neusoft.HISFC.Models.Fee.MedItemList medicineList = new Neusoft.HISFC.Models.Fee.MedItemList(); //批费 alDrung = this.InpatientManager.QueryMedItemListsCanQuit(inpatientNO, fromDate, endDate, "1,2", false); if (alDrung.Count > 0) { for (int i = 0; i < alDrung.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList medcineList = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); medcineList = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList)alDrung[i]; this.fpDrug_Sheet1.Rows.Add(this.fpDrug_Sheet1.RowCount, 1); this.fpDrug_Sheet1.Cells[i, 0].Value = medcineList.Item.Name; this.fpDrug_Sheet1.Cells[i, 1].Value = medcineList.Item.Specs; this.fpDrug_Sheet1.Cells[i, 2].Value = medcineList.Item.Price; this.fpDrug_Sheet1.Cells[i, 3].Value = medcineList.Item.PriceUnit; this.fpDrug_Sheet1.Cells[i, 4].Value = medcineList.Item.Qty; this.fpDrug_Sheet1.Cells[i, 5].Value = medcineList.FT.TotCost; this.fpDrug_Sheet1.Cells[i, 6].Value = medcineList.FT.OwnCost; this.fpDrug_Sheet1.Cells[i, 7].Value = Neusoft.FrameWork.Public.String.FormatNumberReturnString(medcineList.FT.OwnCost / medcineList.FT.TotCost, 2); this.fpDrug_Sheet1.Cells[i, 8].Value = medcineList.FT.PayCost; this.fpDrug_Sheet1.Cells[i, 9].Value = Neusoft.FrameWork.Public.String.FormatNumberReturnString(medcineList.FT.PayCost / medcineList.FT.TotCost, 2); this.fpDrug_Sheet1.Cells[i, 10].Value = medcineList.FT.PubCost; this.fpDrug_Sheet1.Cells[i, 11].Value = medcineList.FeeOper.OperTime; this.fpDrug_Sheet1.Rows[i].Tag = medcineList; } } return(1); }
/// <summary> /// 非药品收费明细 /// </summary> /// <returns></returns> protected virtual int DisplayUndrugDetail(string inpatientNO) { DateTime fromDate = Neusoft.FrameWork.Function.NConvert.ToDateTime("1900-01-01"); DateTime endDate = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.InpatientManager.GetSysDateTime()); ArrayList alUnDrung = new ArrayList(); alUnDrung = this.InpatientManager.QueryFeeItemListsCanQuit(inpatientNO, fromDate, endDate, false); if (alUnDrung.Count > 0) { for (int i = 0; i < alUnDrung.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList undrugItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); undrugItem = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList)alUnDrung[i]; this.fpUndrug_Sheet1.AddRows(this.fpUndrug_Sheet1.RowCount, 1); this.fpUndrug_Sheet1.Cells[i, 0].Text = undrugItem.Item.Name; this.fpUndrug_Sheet1.Cells[i, 1].Value = undrugItem.Item.Price; this.fpUndrug_Sheet1.Cells[i, 3].Value = undrugItem.Item.PriceUnit; this.fpUndrug_Sheet1.Cells[i, 2].Value = undrugItem.Item.Qty; this.fpUndrug_Sheet1.Cells[i, 4].Value = undrugItem.FT.TotCost; this.fpUndrug_Sheet1.Cells[i, 5].Value = undrugItem.FT.OwnCost; this.fpUndrug_Sheet1.Cells[i, 6].Value = Neusoft.FrameWork.Public.String.FormatNumberReturnString(undrugItem.FT.OwnCost / undrugItem.FT.TotCost, 2); this.fpUndrug_Sheet1.Cells[i, 7].Value = undrugItem.FT.PayCost; this.fpUndrug_Sheet1.Cells[i, 8].Value = Neusoft.FrameWork.Public.String.FormatNumberReturnString(undrugItem.FT.PayCost / undrugItem.FT.TotCost, 2); this.fpUndrug_Sheet1.Cells[i, 9].Value = undrugItem.FT.PubCost; this.fpUndrug_Sheet1.Cells[i, 10].Value = undrugItem.FeeOper.OperTime; this.fpUndrug_Sheet1.Rows[i].Tag = undrugItem; } } return(1); }
/// <summary> /// 住院医技预约 /// </summary> /// <param name="fee">住院收费实体</param> /// <returns></returns> public int Insert(Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList fee) { Neusoft.HISFC.Models.Fee.Outpatient.FeeItemList feeItem = new Neusoft.HISFC.Models.Fee.Outpatient.FeeItemList(); feeItem.ID = fee.ID; //住院流水号 feeItem.Patient.PID.CardNO = fee.Patient.PID.PatientNO; //住院号 if (fee.Name == null || fee.Name == "") { feeItem.Name = fee.Patient.Name;//姓名 } else { feeItem.Name = fee.Name; //姓名 } feeItem.Item.ID = fee.Item.ID; //项目编码 feeItem.Item.Name = fee.Item.Name; //项目名称 feeItem.Item.Qty = fee.Item.Qty; //项目数量 feeItem.RecipeNO = fee.RecipeNO; //处方号 feeItem.SequenceNO = fee.SequenceNO; //处方内序号 feeItem.Order.DoctorDept.Name = fee.Order.DoctorDept.Name; //开单科室 feeItem.ExecOper.Dept.ID = fee.Order.ExecOper.Dept.ID; //执行科室 feeItem.ExecOper.Dept.Name = fee.ExecOper.Dept.Name; //执行科室 feeItem.Order.DoctorDept.ID = fee.Order.DoctorDept.ID; //操作科室 feeItem.Order.ID = fee.Order.ID; //医嘱流水号 this.SetDB(serviceTerminal); return(Insert(feeItem)); }
/// <summary> /// 查询 根据住院流水号 ,科室 查询暂存的数据 /// </summary> /// <param name="InpatientNO">住院流水号</param> /// <param name="DeptCode">科室 </param> /// <returns></returns> public ArrayList Query(string InpatientNO, string DeptCode) { ArrayList list = new ArrayList(); string strSQL = ""; if (this.Sql.GetSql("Fee.TemporaryFee.Query.2", ref strSQL) == -1) { return(null); } try { strSQL = string.Format(strSQL, InpatientNO, DeptCode); //替换SQL语句中的参数。 this.ExecQuery(strSQL); while (this.Reader.Read()) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList obj = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); obj.Item.ID = this.Reader[1].ToString(); //项目编码 obj.Item.Qty = Neusoft.FrameWork.Function.NConvert.ToDecimal(Reader[2].ToString()); //数量 obj.FTRate.ItemRate = Neusoft.FrameWork.Function.NConvert.ToDecimal(Reader[3].ToString()); //比率 obj.Item.Price = Neusoft.FrameWork.Function.NConvert.ToDecimal(Reader[8].ToString()); //价格 list.Add(obj); } this.Reader.Close(); return(list); } catch (Exception ex) { this.Err = ex.Message; return(null); } }
public List <Neusoft.HISFC.Models.FeeStuff.Output> QueryOutput(Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList) { if (this.CreatInstance() < 0) { return(new List <Neusoft.HISFC.Models.FeeStuff.Output>()); } return(this.matFeeAchieve.QueryOutput(feeItemList)); }
/// <summary> /// 获取出库记录 /// </summary> /// <param name="feeItemList">收费项目</param> /// <returns>出库记录列表</returns> public List <Neusoft.HISFC.Models.FeeStuff.Output> QueryOutput(Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList) { if (feeItemList.Item.ItemType != EnumItemType.Drug) { if (!string.IsNullOrEmpty(feeItemList.UpdateSequence.ToString()) && feeItemList.UpdateSequence != 0) { return(QueryOutput(feeItemList.UpdateSequence.ToString())); } } return(null); }
public int GetFeeItemList(string path, string tablename, ref Neusoft.HISFC.Models.RADT.PatientInfo p, ref ArrayList al) { //string path = filePath.Substring(0, filePath.LastIndexOf(@"\") + 1); //string tablename = filePath.Substring(filePath.LastIndexOf(@"\") + 1, filePath.Length - filePath.LastIndexOf(@"\") - 1); string connect = @"Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277; Dbq=" + path; System.Data.Odbc.OdbcConnection myconn = new System.Data.Odbc.OdbcConnection(connect); string sql = "select GRSHBZH,ZYH,XMXH,XMBH,XMMC,FLDM,YPGG,YPJX,JG,MCYL,JE,ZFBL,ZFJE,CZFBZ,BZ1,BZ2,BZ3 from " + tablename; System.Data.Odbc.OdbcCommand cmd = new System.Data.Odbc.OdbcCommand(sql, myconn); System.Data.Odbc.OdbcDataReader cmReader; try { myconn.Open(); cmReader = cmd.ExecuteReader(); } catch { return(-1); } Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f = null; while (cmReader.Read()) { f = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); p.IDCard = cmReader[0].ToString(); p.PID.PatientNO = cmReader[1].ToString(); f = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); f.Item.User02 = cmReader[2].ToString(); f.Item.UserCode = cmReader[3].ToString(); f.Item.Name = cmReader[4].ToString(); f.Item.SysClass.Name = cmReader[5].ToString(); f.Item.Specs = cmReader[6].ToString(); f.Item.User01 = cmReader[7].ToString(); f.Item.Price = Neusoft.FrameWork.Function.NConvert.ToDecimal(cmReader[8]); f.NoBackQty = Neusoft.FrameWork.Function.NConvert.ToDecimal(cmReader[9]); f.FT.OwnCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(cmReader[10]); al.Add(f); } cmReader.Close(); cmd.Dispose(); myconn.Close(); return(1); }
/// <summary> /// 根据读入标志 查询已传递的项目列表 /// </summary> /// <param name="regNo">患者就医登记号</param> /// <param name="flag">0 未读入 1 读入 2 错误</param> /// <returns>Fee.Inpatient.FeeItemList实体集合</returns> public ArrayList GetUnValidItemList(string regNo, int flag) { string sql = "select * from his_cfxm where JYDJH = '" + regNo + "' and DRBZ = " + flag.ToString(); if (this.ExecQuery(sql) == -1) { return(null); } while (Reader.Read()) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList obj = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); } Reader.Close(); return(null); }
private int AddDetailToFp(Neusoft.HISFC.Models.Terminal.TerminalConfirmDetail tecDetail) { //可以一次取消多条 by yuyun 08-8-12 {58B76F7C-A35D-4cbb-8948-8163EA3C5191} int rowCount = this.fpSpread1_Sheet1.RowCount; this.fpSpread1_Sheet1.Rows.Add(rowCount, 1); #region addby xuewj 2010-10-3 增加单价、合计 {AB2D96F8-2CB3-49d2-9445-CCFDA1FFFCE7} Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList itemList = this.feeManager.GetItemListByRecipeNO(tecDetail.Apply.Item.RecipeNO, tecDetail.Apply.Item.SequenceNO, Neusoft.HISFC.Models.Base.EnumItemType.UnDrug); this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.UnitPrice].Value = itemList.Item.Price; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.TotCost].Value = itemList.FT.TotCost; #endregion this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.MoOrder].Text = tecDetail.MoOrder; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.ExecMoOrder].Text = tecDetail.ExecMoOrder; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.ApplyNum].Text = tecDetail.Sequence; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.ItemID].Text = tecDetail.Apply.Item.ID; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.ItemName].Text = tecDetail.Apply.Item.Name; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.ConfirmQty].Text = tecDetail.Apply.Item.ConfirmedQty.ToString(); #region addby xuewj 2010-10-3 待取消确认列表确认科室、确认人显示名称 {878C1070-41E9-4558-A4D7-E823D044F9EE} //this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperCode].Text = tecDetail.Apply.Item.ConfirmOper.ID; //this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperDept].Text = tecDetail.Apply.ConfirmOperEnvironment.Dept.ID; Neusoft.HISFC.Models.Base.Employee tmpEmp = this.deptManager.GetEmployeeInfo(tecDetail.Apply.Item.ConfirmOper.ID); this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperCode].Tag = tmpEmp.ID; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperCode].Text = tmpEmp.Name; Neusoft.HISFC.Models.Base.Department tmpDept = this.deptManager.GetDepartment(tecDetail.Apply.ConfirmOperEnvironment.Dept.ID);//确认科室 this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperDept].Tag = tmpDept.ID; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperDept].Text = tmpDept.Name; #endregion this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.OperTime].Text = tecDetail.Apply.ConfirmOperEnvironment.OperTime.ToString(); this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.RecipeNo].Text = tecDetail.Apply.Item.RecipeNO; this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.SequenceNo].Text = tecDetail.Apply.Item.SequenceNO.ToString(); //by yuyun 08-7-7 this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.Operator].Text = tecDetail.Oper.ID; //技师:默认是当前操作员,可以修改 this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.Machine].Text = tecDetail.ExecDevice; //项目使用设备:从医技载体表进行查找 this.fpSpread1_Sheet1.Cells[rowCount, (int)Cols.MoOrder].Tag = tecDetail; this.fpSpread1_Sheet1.Rows[rowCount].Tag = tecDetail; //------------{58B76F7C-A35D-4cbb-8948-8163EA3C5191} return(1); }
/// <summary> /// 更新上传标志 /// </summary> /// <param name="f">费用实体类</param> /// <returns></returns> public int updateUploadFlagInpatient(Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f, string transType) { string strSql = ""; if (this.Sql.GetSql("Fee.Interface.UpdateItemList.AnShan.Update.1", ref strSql) == -1) { this.Err = "获得[Fee.Interface.UpdateItemList.AnShan.Update.1]对应sql语句出错"; return(-1); } try { strSql = string.Format(strSql, f.RecipeNO, f.SequenceNO, transType); } catch (Exception ex) { this.ErrCode = ex.Message; this.Err = ex.Message; return(-1); } return(this.ExecNoQuery(strSql)); }
/// <summary> /// 从对照表中查找维护适应症的项目 /// </summary> /// <param name="patientObj"></param> /// <param name="feeitemlist"></param> /// <param name="practicableSymptomText">适应症文本</param> /// <returns> -1 报错 0 没有维护 1 有维护</returns> private int QueryItem(Neusoft.HISFC.Models.RADT.PatientInfo patientObj, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeitemlist, ref string practicableSymptomText) { Neusoft.HISFC.BizLogic.Fee.Interface myInterface = new Neusoft.HISFC.BizLogic.Fee.Interface(); Neusoft.HISFC.Models.SIInterface.Compare myCompare = new Neusoft.HISFC.Models.SIInterface.Compare(); if (patientObj != null || patientObj.ID != "") { myInterface.GetCompareSingleItem(patientObj.Pact.ID, feeitemlist.Item.ID, ref myCompare); if (myCompare.Ispracticablesymptom) { practicableSymptomText = myCompare.Practicablesymptomdepiction; return(1); } else { return(0); } } if (feeitemlist.Item.Memo != "1") { //从维护表中对照项目 } return(0); }
/// <summary> /// 插入单条医嘱明细 /// </summary> /// <param name="pInfo">住院患者基本信息,包括医保基本信息</param> /// <param name="obj">费用明细信息</param> /// <returns></returns> public int InsertItemList(Neusoft.HISFC.Models.RADT.PatientInfo pInfo, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList obj) { string sqlMaxNo = "select isnull(max(XMXH), 0) from his_cfxm where JYDJH = " + "'" + pInfo.SIMainInfo.RegNo + "'"; int i = 1; if (this.ExecQuery(sqlMaxNo) == -1) { return(-1); } while (Reader.Read()) { i = Neusoft.FrameWork.Function.NConvert.ToInt32(Reader[0].ToString()); } Reader.Close(); i++; //if(obj.Item.IsPharmacy) if (obj.Item.ItemType == Neusoft.HISFC.Models.Base.EnumItemType.Drug) { #region delete by maokb // try // { // //将药品编码转换成自定义码 // Neusoft.HISFC.Models.Pharmacy.Item drugItem = new Neusoft.HISFC.Models.Pharmacy.Item(); // Neusoft.HISFC.Management.Pharmacy.Item iMgr = new Neusoft.HISFC.Management.Pharmacy.Item(); // obj.Item = (Neusoft.HISFC.Models.Pharmacy.Item)obj.Item; // drugItem = iMgr.GetItem(obj.Item.ID); // obj.Item.ID = drugItem.UserCode; // } // catch // { // this.Err = "获取药品自定义码出错!"; // return -1; // } // } // else // { // try // { // //将非药品编码转换成自定义码 // Neusoft.HISFC.Models.Fee.Item.Undrug item = new Neusoft.HISFC.Models.Fee.Item.Undrug(); // Neusoft.HISFC.BizLogic.Fee.Item.Undrug itemMgr= new Neusoft.HISFC.BizLogic.Fee.Item.Undrug(); // item = itemMgr.GetItem(obj.Item.ID); // obj.Item.ID = item.UserCode; // } // catch // { // this.Err = "获取非药品自定义码出错!"; // return -1; // } #endregion obj.Item = (Neusoft.HISFC.Models.Pharmacy.Item)obj.Item; } //数据合法性判断主要针对数字型 string sql = "insert into his_cfxm values('" + pInfo.SIMainInfo.RegNo + "','" + pInfo.SIMainInfo.HosNo + "','" + pInfo.IDCard + "','" + pInfo.PID.PatientNO + "','" + pInfo.PVisit.InTime.ToString() + "','" + obj.FeeOper.OperTime.ToString() + "'," + i.ToString() + ",'" + obj.Item.ID + "','" + obj.Item.Name + "'," + "0" + ",'" + obj.Item.Specs + "','" + "" + "'," + (obj.Item.Price * obj.FTRate.OwnRate).ToString() + "," + obj.Item.Qty.ToString() + "," + obj.FT.TotCost.ToString() + ",'" + "" + "','" + "" + "','" + "" + "'," + "0" + ",'" + "" + "')"; if (this.ExecNoQuery(sql) == -1) { return(-1); } return(0); }
public int ModifyUploadedFeeDetailInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f) { throw new Exception("The method or operation is not implemented."); }
/// <summary> /// 审核完毕进行保存 /// </summary> /// <param name="sender"></param> /// <param name="neuObject"></param> /// <returns></returns> protected override int OnSave(object sender, object neuObject) { //判断是否存在没有自付比例的项目 string itemName = ""; for (int i = 0; i < this.fpMedicine_Sheet1.Rows.Count; i++) { if (string.IsNullOrEmpty(this.fpMedicine_Sheet1.Cells[i, 1].Text.Trim()) || this.fpMedicine_Sheet1.Cells[i, 0].Value.ToString() != "True") { itemName += this.fpMedicine_Sheet1.Cells[i, 3].Text + "\n"; } } for (int i = 0; i < this.fpItem_Sheet1.Rows.Count; i++) { if (string.IsNullOrEmpty(this.fpItem_Sheet1.Cells[i, 1].Text.Trim()) || this.fpItem_Sheet1.Cells[i, 0].Value.ToString() != "True") { itemName += this.fpItem_Sheet1.Cells[i, 3].Text + "\n"; } } if (!string.IsNullOrEmpty(itemName)) { if (MessageBox.Show("存在未审核或是未对照的项目信息,如下:\n" + itemName + "\n是否继续??", "提示", MessageBoxButtons.YesNo) == DialogResult.No) { return(-1); } } Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); this.localManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); for (int i = 0; i < this.fpMedicine_Sheet1.Rows.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList item = this.fpMedicine_Sheet1.Rows[i].Tag as Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList; if (this.fpMedicine_Sheet1.Cells[i, 0].Value.ToString() == "True") { item.Item.SpecialFlag3 = "1"; } if (this.localManager.UpdateInpatientMedicineListCheckedInfo(this.patientInfo.ID, item.Item.SpecialFlag1, item) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("提交医保患者的药品审核信息失败 \n" + this.localManager.Err); return(-1); } } for (int i = 0; i < this.fpItem_Sheet1.Rows.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList item = this.fpItem_Sheet1.Rows[i].Tag as Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList; if (this.fpItem_Sheet1.Cells[i, 0].Value.ToString() == "True") { item.Item.SpecialFlag3 = "1"; } if (this.localManager.UpdateInpatientItemListCheckedInfo(this.patientInfo.ID, item.Item.SpecialFlag1, item) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("提交医保患者的非药品审核信息失败 \n" + this.localManager.Err); return(-1); } } Neusoft.FrameWork.Models.NeuObject obj = new Neusoft.FrameWork.Models.NeuObject(); obj.Name = Neusoft.FrameWork.Management.Connection.Operator.Name; obj.Memo = System.DateTime.Now.ToString(); //更改审核信息 //if (localManager.UpdateSIpatientCheckInfo(patientInfo.ID, obj.Name, obj.Memo) < 0) //{ // MessageBox.Show("保存审核人员信息失败!"+localManager.Err); // return -1; //} Neusoft.FrameWork.Management.PublicTrans.Commit(); MessageBox.Show("审核成功"); return(1); }
/// <summary> /// 药品信息表格双击 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void fpMedicine_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e) { ArrayList rateList = new ArrayList(); int index = this.fpMedicine_Sheet1.ActiveRowIndex; if (index < 0) { return; } else { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList item = this.fpMedicine_Sheet1.ActiveRow.Tag as Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList; rateList = this.localManager.QueryComparedItemCenterRate("2", item.Item.ID); if (rateList == null) { MessageBox.Show("获取项目【" + item.Item.Name + "】的对照信息的中心自付比例失败 " + this.localManager.Err); return; } else if (rateList.Count == 0) { MessageBox.Show("项目【" + item.Item.Name + "】没有进行对照或是目录外的项目 " + this.localManager.Err); return; } else { frmSelectItemOwnRate frmRate = new frmSelectItemOwnRate(); frmRate.RateList = rateList; frmRate.ShowDialog(); if (frmRate.DialogResult == DialogResult.OK) { if (frmRate.IsCheckAll) { for (int i = 0; i < this.fpMedicine_Sheet1.RowCount; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList fee = this.fpMedicine_Sheet1.Rows[i].Tag as Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList; if (fee.Item.ID == item.Item.ID) { fee.Item.SpecialFlag3 = "1"; fee.Item.SpecialFlag2 = frmRate.RateMemmo.ToString(); if (!string.IsNullOrEmpty(frmRate.RateMemmo.ToString())) { fee.Item.SpecialFlag1 = frmRate.Rate.ToString(); this.fpMedicine_Sheet1.Cells[i, 0].Value = true; this.fpMedicine_Sheet1.Rows[i].ForeColor = Color.Black; this.fpMedicine_Sheet1.Cells[i, 1].Text = frmRate.Rate.ToString(); this.fpMedicine_Sheet1.Cells[i, 2].Text = frmRate.RateMemmo.ToString(); } else { fee.Item.SpecialFlag1 = ""; this.fpMedicine_Sheet1.Cells[i, 0].Value = true; this.fpMedicine_Sheet1.Rows[i].ForeColor = Color.Black; this.fpMedicine_Sheet1.Cells[i, 1].Text = fee.Item.SpecialFlag1; this.fpMedicine_Sheet1.Cells[i, 2].Text = frmRate.RateMemmo.ToString(); } this.fpMedicine_Sheet1.Rows[i].Tag = fee; } } } else { item.Item.SpecialFlag3 = "1"; item.Item.SpecialFlag2 = frmRate.RateMemmo.ToString(); if (!string.IsNullOrEmpty(frmRate.RateMemmo.ToString())) { item.Item.SpecialFlag1 = frmRate.Rate.ToString(); this.fpMedicine_Sheet1.Cells[index, 0].Value = true; this.fpMedicine_Sheet1.Rows[index].ForeColor = Color.Black; this.fpMedicine_Sheet1.Cells[index, 1].Text = frmRate.Rate.ToString(); this.fpMedicine_Sheet1.Cells[index, 2].Text = frmRate.RateMemmo.ToString(); } else { item.Item.SpecialFlag1 = ""; this.fpMedicine_Sheet1.Cells[index, 0].Value = true; this.fpMedicine_Sheet1.Rows[index].ForeColor = Color.Black; this.fpMedicine_Sheet1.Cells[index, 1].Text = item.Item.SpecialFlag1; this.fpMedicine_Sheet1.Cells[index, 2].Text = frmRate.RateMemmo.ToString(); } this.fpMedicine_Sheet1.Rows[index].Tag = item; } } } } }
public int RecomputeFeeItemListInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f) { //Neusoft.HISFC.Models.Base.PactItemRate pRate = null; //if (this.trans != null) //{ // this.pactItemRate.SetTrans(this.trans); // this.pactInfoManager.SetTrans(this.trans); //} //pRate = this.pactItemRate.GetOnepPactUnitItemRateByItem(patient.Pact.ID, f.Item.ID); //if (pRate == null) //{ // pRate = this.pactItemRate.GetOnePaceUnitItemRateByFeeCode(patient.Pact.ID, f.Item.MinFee.ID); // if (pRate == null) // { // Neusoft.HISFC.Models.Base.PactInfo p = this.pactInfoManager.GetPactUnitInfoByPactCode(patient.Pact.ID); // if (p == null) // { // this.errMsg = this.pactInfoManager.Err; // return -1; // } // pRate = new Neusoft.HISFC.Models.Base.PactItemRate(); // pRate.Rate = p.Rate; // } //} //decimal pubCost = 0; //f.FT.OwnCost = Neusoft.FrameWork.Public.String.FormatNumber(f.FT.TotCost * pRate.Rate.OwnRate, 2); //pubCost = f.FT.TotCost - f.FT.OwnCost; //f.FT.PayCost = Neusoft.FrameWork.Public.String.FormatNumber(pubCost * pRate.Rate.PayRate, 2); //f.FT.PubCost = pubCost - f.FT.PayCost; Neusoft.HISFC.Models.SIInterface.Compare compareObj = new Neusoft.HISFC.Models.SIInterface.Compare(); int resultValue = interfaceManager.GetCompareSingleItem(comparePactCode, f.Item.ID, ref compareObj); if (resultValue == -1) { this.errMsg = "查询对照项目信息失败!" + interfaceManager.Err; return(-1); } if (resultValue == -2) { f.FT.OwnCost = f.FT.TotCost; f.FT.PubCost = 0; f.FT.PayCost = 0; } else { decimal payRate = compareObj.CenterItem.Rate; if (payRate == 1) { f.FT.OwnCost = f.FT.TotCost; f.FT.PubCost = 0; f.FT.PayCost = 0; } else { decimal pubPrice = f.Item.Price * (1 - compareObj.CenterItem.Rate); if (pubPrice > compareObj.CenterItem.Price) { pubPrice = compareObj.CenterItem.Price; } if (f.Item.ItemType == Neusoft.HISFC.Models.Base.EnumItemType.Drug) { f.FT.PubCost = Neusoft.FrameWork.Public.String.FormatNumber(pubPrice * f.Item.Qty / f.Item.PackQty, 2); } f.FT.OwnCost = f.FT.TotCost - f.FT.PubCost; f.FT.PayCost = 0m; } } return(1); }
public int UploadFeeDetailInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f) { return(1); }
/// <summary> /// 单条处理(嵌入在选择项目中) /// </summary> /// <param name="patientObj"></param> /// <param name="inpatientDetail"></param> /// <returns></returns> public int ProcessInpatientFeeDetail(Neusoft.HISFC.Models.RADT.PatientInfo patientObj, ref Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList inpatientDetail) { string practicableSymptomText = ""; int returnValue = this.QueryItem(patientObj, inpatientDetail, ref practicableSymptomText); switch (returnValue) { case 0: //没有维护 { //不处理 break; } case 1: //有维护 { DialogResult d = System.Windows.Forms.MessageBox.Show("该项目在适应症中有维护:\n" + practicableSymptomText + "\n" + "是否选择按照适应症收费", "提示", MessageBoxButtons.YesNoCancel); if (d == DialogResult.Cancel) { return(1); } else if (d == DialogResult.Yes) { //是否适应症置为1 借用inpatientDetail.Item.Memo inpatientDetail.Item.Memo = "1"; return(1); } else { inpatientDetail.Item.Memo = "0"; //不处理 } break; } case -1: //出错 { break; } default: break; } return(1); }
///// <summary> ///// 初始化事件 ///// </summary> ///// <param name="sender"></param> ///// <param name="neuObject"></param> ///// <param name="param"></param> ///// <returns></returns> //protected override Neusoft.FrameWork.WinForms.Forms.ToolBarService OnInit(object sender, object neuObject, object param) //{ // if (this.DesignMode) // { // return null; // } // if (this.isQueryForm) // { // this.neuButtonOK.Visible = false; // } // else // { // this.neuButtonOK.Visible = true; // } // return null; //} #endregion #region 取消终端确认 private void CancelConfirm() { if (this.neuSpreadItemDetail_SheetItemDetail.RowCount == 0) { return; } if (MessageBox.Show("是否取消该次确认", "确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) { return; } if (this.neuSpreadItemDetail_SheetItemDetail.Rows[this.neuSpreadItemDetail_SheetItemDetail.ActiveRowIndex].Tag == null) { MessageBox.Show("获取终端确认明细出错"); return; } Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); Neusoft.HISFC.BizLogic.Terminal.TerminalConfirm terminalConfim = new Neusoft.HISFC.BizLogic.Terminal.TerminalConfirm(); Neusoft.HISFC.BizProcess.Integrate.PhysicalExamination.ExamiManager examiMgr = new Neusoft.HISFC.BizProcess.Integrate.PhysicalExamination.ExamiManager(); Neusoft.HISFC.BizProcess.Integrate.Fee feeMgr = new Neusoft.HISFC.BizProcess.Integrate.Fee(); Neusoft.HISFC.BizProcess.Integrate.RADT serviceInpatient = new Neusoft.HISFC.BizProcess.Integrate.RADT(); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(terminalConfim.Connection); //t.BeginTransaction(); //terminalConfim.SetTrans(t.Trans); //examiMgr.SetTrans(t.Trans); //feeMgr.SetTrans(t.Trans); //serviceInpatient.SetTrans(t.Trans); Neusoft.HISFC.Models.Terminal.TerminalConfirmDetail detail = (Neusoft.HISFC.Models.Terminal.TerminalConfirmDetail) this.neuSpreadItemDetail_SheetItemDetail.Rows[this.neuSpreadItemDetail_SheetItemDetail.ActiveRowIndex].Tag; Neusoft.HISFC.Models.Terminal.TerminalApply apply = terminalConfim.GetItemListBySequence(detail.Apply.Order.ID, detail.Apply.ID); Neusoft.HISFC.Models.Base.Employee employee = (Neusoft.HISFC.Models.Base.Employee)terminalConfim.Operator; if (detail.OperInfo.ID != terminalConfim.Operator.ID) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("只能取消自己做过的终端确认"); return; } if (detail == null) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("获取终端确认明细出错"); return; } int BackQty = Neusoft.FrameWork.Function.NConvert.ToInt32(detail.Apply.Item.ConfirmedQty); if (terminalConfim.UpdateConfirmDetail(detail.Sequence, "1") <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("作废终端确认明细表出错" + terminalConfim.Err); return; } if (terminalConfim.UpdateTerminalConfirmByMoOrder(detail.Apply.Order.ID, BackQty) <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("更新终端确认主表失败" + terminalConfim.Err); return; } string confirmFlag = "1"; if (apply.AlreadyConfirmCount - BackQty == 0) { confirmFlag = "0"; } if (apply.PatientType != "5" && (apply.PatientType == "1" || apply.PatientType == "4")) { if (terminalConfim.UpdateFeeConfirmQty(detail.Apply.Order.ID, confirmFlag, -BackQty) <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("更新费用表失败" + terminalConfim.Err); return; } #region 扣门诊账户 if (detail.Apply.SpecalFlag == "1") { //退费用到门诊账户 ,目前门诊账户项目不能分开多次确认 decimal totCost = decimal.Round(apply.Item.Item.Price * apply.Item.Item.Qty, 2); if (feeMgr.AccountCancelPay(apply.Patient, totCost, "终端退费", employee.Dept.ID, "") < 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("退门诊账户失败 :" + feeMgr.Err); return; } #region 更新费用表 if (feeMgr.UpdateAccountByMoOrderAndItemCode(apply.Item.Item.ID, apply.Order.ID, false) <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("门诊收费表扣费标志失败 :" + feeMgr.Err); return; } #endregion #region 更新执行标志到划价状态 if (terminalConfim.UpdateConfirmSendFlag(detail.Apply.Order.ID, detail.Apply.Item.Item.ID, "0") <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("更新终端确认表执行标志失败 :" + terminalConfim.Err); return; } #endregion } #endregion } if (apply.PatientType == "4" || apply.PatientType == "5") { //体检中心的可退数量 int NoBackQty = Neusoft.FrameWork.Function.NConvert.ToInt32(apply.Item.Item.Qty - apply.Item.ConfirmedQty + BackQty); if (examiMgr.UpdateConfirmInfo(detail.Apply.Order.ID, confirmFlag, NoBackQty) <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("更新体检表失败:" + examiMgr.Err); return; } } if (apply.PatientType == "2" && detail.Apply.SpecalFlag == "2") //回退住院费用 { #region 构建住院患者实体 Neusoft.HISFC.Models.RADT.PatientInfo patientInfo = serviceInpatient.QueryPatientInfoByInpatientNO(apply.Patient.PID.ID); if (patientInfo == null) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("获取住院患者信息失败:" + serviceInpatient.Err); return; } #endregion #region 构建住院费用实体 Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); Neusoft.HISFC.Models.Terminal.TerminalApply terminalApply = apply.Clone(); feeItemList.Item = terminalApply.Item.Item.Clone(); feeItemList.Item.PriceUnit = terminalApply.Item.Item.PriceUnit;//计价单位 if (terminalApply.Item.Order.DoctorDept.ID == null || terminalApply.Item.Order.DoctorDept.ID == "") { feeItemList.RecipeOper.Dept = employee.Dept; } else { feeItemList.RecipeOper.Dept = terminalApply.Item.Order.DoctorDept; } if (terminalApply.Item.Order.Doctor.ID == null || terminalApply.Item.Order.Doctor.ID == "") { feeItemList.RecipeOper.ID = employee.ID; feeItemList.RecipeOper.Name = employee.Name; feeItemList.ChargeOper.ID = employee.ID; feeItemList.ChargeOper.Name = employee.Name; feeItemList.ChargeOper.Dept = employee.Dept; } else { feeItemList.RecipeOper.ID = terminalApply.Item.Order.Doctor.ID; feeItemList.RecipeOper.Name = terminalApply.Item.Order.Doctor.Name; feeItemList.ChargeOper.ID = terminalApply.Item.Order.Doctor.ID; feeItemList.ChargeOper.Name = terminalApply.Item.Order.Doctor.Name; } feeItemList.ExecOper.ID = employee.ID; feeItemList.ExecOper.Name = employee.Name; feeItemList.ExecOper.Dept = employee.Dept; feeItemList.StockOper.Dept = employee.Dept;//药品的扣库存的科室 feeItemList.Item.PackQty = terminalApply.Item.Item.PackQty; feeItemList.Item.Qty = terminalApply.Item.Item.Price; feeItemList.Item.Qty = terminalApply.Item.Item.Qty; if (feeItemList.Item.PackQty == 0) { feeItemList.Item.PackQty = 1; } feeItemList.FT.TotCost = Neusoft.FrameWork.Public.String.FormatNumber((feeItemList.Item.Price * feeItemList.Item.Qty / feeItemList.Item.PackQty), 2); feeItemList.FT.OwnCost = feeItemList.FT.TotCost; feeItemList.IsBaby = patientInfo.IsBaby; feeItemList.IsEmergency = false; feeItemList.Order = new Neusoft.HISFC.Models.Order.Inpatient.Order(); feeItemList.ExecOrder.ID = terminalApply.Item.Order.ID; feeItemList.NoBackQty = 0; feeItemList.FTRate.OwnRate = 1; feeItemList.BalanceState = "0"; feeItemList.FeeOper.ID = employee.ID; feeItemList.FeeOper.Name = employee.Name; feeItemList.FeeOper.Dept = employee.Dept; feeItemList.TransType = TransTypes.Positive; #endregion if (feeMgr.QuitItem(patientInfo, feeItemList) <= 0) { MessageBox.Show("退住院费用失败" + feeMgr.Err); return; } } Neusoft.FrameWork.Management.PublicTrans.Commit(); this.neuSpreadItemDetail_SheetItemDetail.Rows.Remove(this.neuSpreadItemDetail_SheetItemDetail.ActiveRowIndex, 1); #region 修改界面上的数量 for (int i = 0; i < this.neuSpreadItem_SheetItem.RowCount; i++) { Neusoft.HISFC.Models.Terminal.TerminalApply obj = (Neusoft.HISFC.Models.Terminal.TerminalApply) this.neuSpreadItem_SheetItem.Rows[i].Tag; if (obj.Order.ID == detail.Apply.Order.ID) { int freeQty = Neusoft.FrameWork.Function.NConvert.ToInt32(detail.Apply.Item.ConfirmedQty) + Neusoft.FrameWork.Function.NConvert.ToInt32(neuSpreadItem_SheetItem.Cells[i, (int)ApplyField.FreeQty].Text); this.neuSpreadItem_SheetItem.Cells[i, (int)ApplyField.FreeQty].Text = freeQty.ToString(); break; } } #endregion MessageBox.Show("取消成功"); }
/// <summary> /// 添加数据到表格 /// </summary> /// <param name="al"></param> protected virtual void AddDataToFp(ArrayList al) { #region 处理组套项目{5C2A9C83-D165-434c-ACA4-86F23E956442} List <string> combIDList = new List <string>(); #endregion this.neuSpread1_Sheet1.RowCount = 0; #region 回车后不清空待取消列表 addby xuewj 2010-10-3 {375AA101-22FF-4344-A460-44881766CEA1} this.fpSpread1_Sheet1.RowCount = 0; #endregion if (al != null && al.Count > 0) { foreach (Neusoft.HISFC.Models.Terminal.TerminalConfirmDetail confirmDetail in al) { //{23016A93-22CE-4fe6-9CF4-1F9E90B3DD08} if (this.seeAll) { if (this.IsExist(confirmDetail)) //不存在,继续 { continue; } } #region 处理组套项目{5C2A9C83-D165-434c-ACA4-86F23E956442} int rowIndex = 0; bool isComb = false; Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList itemList = this.feeManager.GetItemListByRecipeNO(confirmDetail.Apply.Item.RecipeNO, confirmDetail.Apply.Item.SequenceNO, Neusoft.HISFC.Models.Base.EnumItemType.UnDrug); if (itemList != null) { if (!string.IsNullOrEmpty(itemList.UndrugComb.ID)) { isComb = true; if (!combIDList.Contains(itemList.UndrugComb.ID + confirmDetail.ExecMoOrder)) { combIDList.Add(itemList.UndrugComb.ID + confirmDetail.ExecMoOrder); this.neuSpread1_Sheet1.Rows.Add(0, 1); this.neuSpread1_Sheet1.RowHeader.Cells[0, 0].Text = "+"; this.neuSpread1_Sheet1.RowHeader.Cells[0, 0].BackColor = Color.YellowGreen; this.neuSpread1_Sheet1.Rows[0].BackColor = Color.LightBlue; #region addby xuewj 2010-10-3 增加单价、合计 {AB2D96F8-2CB3-49d2-9445-CCFDA1FFFCE7} //this.neuSpread1_Sheet1.Cells[0, 0].Text = confirmDetail.MoOrder;//医嘱号 //this.neuSpread1_Sheet1.Cells[0, 1].Text = confirmDetail.ExecMoOrder;//医嘱执行号 //this.neuSpread1_Sheet1.Cells[0, 3].Text = itemList.UndrugComb.ID;//项目编码 //this.neuSpread1_Sheet1.Cells[0, 4].Text = itemList.UndrugComb.Name;//项目名称 //this.neuSpread1_Sheet1.Cells[0, 5].Text = confirmDetail.Apply.Item.ConfirmedQty.ToString();//已确认数量 //Neusoft.HISFC.Models.Base.Employee tmpEmp = this.deptManager.GetEmployeeInfo(confirmDetail.Apply.Item.ConfirmOper.ID); //this.neuSpread1_Sheet1.Cells[0, 6].Text = tmpEmp.Name; //Neusoft.HISFC.Models.Base.Department tmpDept = this.deptManager.GetDepartment(confirmDetail.Apply.ConfirmOperEnvironment.Dept.ID);//确认科室 //this.neuSpread1_Sheet1.Cells[0, 7].Tag = tmpDept.ID; //this.neuSpread1_Sheet1.Cells[0, 7].Text = tmpDept.Name; //this.neuSpread1_Sheet1.Cells[0, 8].Text = confirmDetail.Apply.ConfirmOperEnvironment.OperTime.ToString();//操作时间 this.neuSpread1_Sheet1.Cells[0, (int)Cols.MoOrder].Text = confirmDetail.MoOrder; //医嘱号 this.neuSpread1_Sheet1.Cells[0, (int)Cols.ExecMoOrder].Text = confirmDetail.ExecMoOrder; //医嘱执行号 this.neuSpread1_Sheet1.Cells[0, (int)Cols.ItemID].Text = itemList.UndrugComb.ID; //项目编码 this.neuSpread1_Sheet1.Cells[0, (int)Cols.ItemName].Text = itemList.UndrugComb.Name; //项目名称 this.neuSpread1_Sheet1.Cells[0, (int)Cols.ConfirmQty].Text = confirmDetail.Apply.Item.ConfirmedQty.ToString(); //已确认数量 Neusoft.HISFC.Models.Base.Employee tmpEmp = this.deptManager.GetEmployeeInfo(confirmDetail.Apply.Item.ConfirmOper.ID); this.neuSpread1_Sheet1.Cells[0, (int)Cols.OperCode].Text = tmpEmp.Name; Neusoft.HISFC.Models.Base.Department tmpDept = this.deptManager.GetDepartment(confirmDetail.Apply.ConfirmOperEnvironment.Dept.ID);//确认科室 this.neuSpread1_Sheet1.Cells[0, (int)Cols.OperDept].Tag = tmpDept.ID; this.neuSpread1_Sheet1.Cells[0, (int)Cols.OperDept].Text = tmpDept.Name; this.neuSpread1_Sheet1.Cells[0, (int)Cols.OperTime].Text = confirmDetail.Apply.ConfirmOperEnvironment.OperTime.ToString();//操作时间 #endregion rowIndex++; } else { //查找组套节点 for (int i = 0; i < this.neuSpread1_Sheet1.Rows.Count; i++) { if (this.neuSpread1_Sheet1.Cells[i, 2].Text == "" && this.neuSpread1_Sheet1.Cells[i, 1].Text == confirmDetail.ExecMoOrder && this.neuSpread1_Sheet1.Cells[i, 3].Text == itemList.UndrugComb.ID) { rowIndex = i + 1; break; } } } } } #endregion //this.neuSpread1_Sheet1.Rows.Add(0, 1); //{5C2A9C83-D165-434c-ACA4-86F23E956442} this.neuSpread1_Sheet1.Rows.Add(rowIndex, 1); if (isComb) { this.neuSpread1_Sheet1.RowHeader.Cells[rowIndex, 0].BackColor = Color.Yellow; this.neuSpread1_Sheet1.Rows[rowIndex].BackColor = Color.LightYellow; this.neuSpread1_Sheet1.RowHeader.Cells[rowIndex, 0].Text = "."; this.neuSpread1_Sheet1.Rows[rowIndex].Visible = false; } Neusoft.HISFC.Models.Base.Employee employee = new Neusoft.HISFC.Models.Base.Employee(); Neusoft.HISFC.Models.Base.Department dept = new Neusoft.HISFC.Models.Base.Department(); #region addby xuewj 2010-10-3 增加单价、合计 {AB2D96F8-2CB3-49d2-9445-CCFDA1FFFCE7} //this.neuSpread1_Sheet1.Cells[rowIndex, 0].Text = confirmDetail.MoOrder;//医嘱号 //this.neuSpread1_Sheet1.Cells[rowIndex, 1].Text = confirmDetail.ExecMoOrder;//医嘱执行号 //this.neuSpread1_Sheet1.Cells[rowIndex, 2].Text = confirmDetail.Sequence;//流水号 主键 //this.neuSpread1_Sheet1.Cells[rowIndex, 3].Text = confirmDetail.Apply.Item.ID;//项目编码 //this.neuSpread1_Sheet1.Cells[rowIndex, 4].Text = confirmDetail.Apply.Item.Name;//项目名称 //this.neuSpread1_Sheet1.Cells[rowIndex, 5].Text = confirmDetail.Apply.Item.ConfirmedQty.ToString();//已确认数量 //this.neuSpread1_Sheet1.Cells[rowIndex, 6].Tag = confirmDetail.Apply.Item.ConfirmOper.ID;//确认人 //employee = this.deptManager.GetEmployeeInfo(confirmDetail.Apply.Item.ConfirmOper.ID); //this.neuSpread1_Sheet1.Cells[rowIndex, 6].Text = employee.Name; //dept = this.deptManager.GetDepartment(confirmDetail.Apply.ConfirmOperEnvironment.Dept.ID);//确认科室 //this.neuSpread1_Sheet1.Cells[rowIndex, 7].Tag = dept.ID; //this.neuSpread1_Sheet1.Cells[rowIndex, 7].Text = dept.Name; //this.neuSpread1_Sheet1.Cells[rowIndex, 8].Text = confirmDetail.Apply.ConfirmOperEnvironment.OperTime.ToString();//操作时间 //this.neuSpread1_Sheet1.Cells[rowIndex, 9].Text = confirmDetail.Apply.Item.RecipeNO;//处方号 //this.neuSpread1_Sheet1.Cells[rowIndex, 10].Text = confirmDetail.Apply.Item.SequenceNO.ToString();//处方内流水号 //this.neuSpread1_Sheet1.Cells[rowIndex, 11].Text = confirmDetail.ExecDevice;//执行设备 //this.neuSpread1_Sheet1.Cells[rowIndex, 12].Text = confirmDetail.Oper.ID;//执行技师 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.MoOrder].Text = confirmDetail.MoOrder; //医嘱号 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.ExecMoOrder].Text = confirmDetail.ExecMoOrder; //医嘱执行号 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.ApplyNum].Text = confirmDetail.Sequence; //流水号 主键 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.ItemID].Text = confirmDetail.Apply.Item.ID; //项目编码 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.ItemName].Text = confirmDetail.Apply.Item.Name; //项目名称 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.ConfirmQty].Text = confirmDetail.Apply.Item.ConfirmedQty.ToString(); //已确认数量 if (itemList != null) { this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.UnitPrice].Text = decimal.Round(itemList.Item.Price, 2).ToString(); //已确认数量 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.TotCost].Text = decimal.Round(itemList.FT.TotCost, 2).ToString(); //已确认数量 } this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.OperCode].Tag = confirmDetail.Apply.Item.ConfirmOper.ID; //确认人 employee = this.deptManager.GetEmployeeInfo(confirmDetail.Apply.Item.ConfirmOper.ID); this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.OperCode].Text = employee.Name; dept = this.deptManager.GetDepartment(confirmDetail.Apply.ConfirmOperEnvironment.Dept.ID);//确认科室 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.OperDept].Tag = dept.ID; this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.OperDept].Text = dept.Name; this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.OperTime].Text = confirmDetail.Apply.ConfirmOperEnvironment.OperTime.ToString(); //操作时间 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.RecipeNo].Text = confirmDetail.Apply.Item.RecipeNO; //处方号 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.SequenceNo].Text = confirmDetail.Apply.Item.SequenceNO.ToString(); //处方内流水号 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.Operator].Text = confirmDetail.ExecDevice; //执行设备 this.neuSpread1_Sheet1.Cells[rowIndex, (int)Cols.Machine].Text = confirmDetail.Oper.ID; //执行技师 #endregion this.neuSpread1_Sheet1.Rows[rowIndex].Tag = confirmDetail; } } }
public int RecomputeFeeItemListInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList) { throw new Exception("The method or operation is not implemented."); }
/// <summary> /// 身份变更确认操作 /// </summary> /// <returns></returns> protected virtual int ChangePact() { if (this.IsValid() < 0) { return(-1); } Neusoft.FrameWork.WinForms.Classes.Function.ShowWaitForm("正在处理明细数据……"); Application.DoEvents(); Neusoft.FrameWork.Models.NeuObject newObj = new Neusoft.FrameWork.Models.NeuObject(); Neusoft.FrameWork.Models.NeuObject oldObj = new Neusoft.FrameWork.Models.NeuObject(); Neusoft.FrameWork.Models.NeuObject obj = new Neusoft.FrameWork.Models.NeuObject(); //备份收费药品信息 ArrayList alDruglistBackUp = new ArrayList(); //备份收费药品信息 ArrayList alUndruglistBackUp = new ArrayList(); obj = this.GetPactUnitByID(this.cmbNewPact.SelectedItem.ID); this.medcareInterfaceProxy.SetPactCode(this.cmbNewPact.SelectedItem.ID); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(Neusoft.FrameWork.Management.Connection.Instance); Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); Neusoft.HISFC.BizProcess.Integrate.Pharmacy pharmacyIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Pharmacy(); pharmacyIntegrate.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); this.InpatientManager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); this.myPactUnit.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); this.radtIntegrate.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); this.feeIntegrate.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); newObj.ID = this.cmbNewPact.SelectedItem.ID; //1 合同单位代码 newObj.Name = this.cmbNewPact.SelectedItem.Name; //2 合同单位名称 newObj.User01 = obj.ID; //3 结算类别代码 newObj.User02 = obj.Name; //4 结算类别名称 newObj.User03 = this.patientInfo.SSN; //医疗证号 oldObj.ID = this.txtOldPact.Tag.ToString(); oldObj.Name = this.txtOldPact.Text; #region 退费 #region 处理非药品 //处理非药品 if (this.fpUndrug_Sheet1.RowCount > 0) { for (int i = 0; i < fpUndrug_Sheet1.RowCount; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList undrugItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList oldUndrugItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); if (this.fpUndrug_Sheet1.Rows[i].Tag != null) { undrugItem = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList) this.fpUndrug_Sheet1.Rows[i].Tag; oldUndrugItem = undrugItem.Clone(); undrugItem.ExtFlag2 = "3";//变更标志 //退费 undrugItem.IsNeedUpdateNoBackQty = true; if (this.feeIntegrate.QuitItem(this.patientInfo, undrugItem) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } //收费 oldUndrugItem.RecipeNO = this.InpatientManager.GetUndrugRecipeNO(); oldUndrugItem.Patient.Pact.ID = this.cmbNewPact.SelectedItem.ID; oldUndrugItem.FeeOper.ID = this.InpatientManager.Operator.ID; oldUndrugItem.FeeOper.OperTime = this.InpatientManager.GetDateTimeFromSysDateTime(); //备份非药品信息 alUndruglistBackUp.Add(oldUndrugItem); //if (this.feeIntegrate.FeeItem(this.oENewPatientInfo, oldUndrugItem) == -1) //{ // t.RollBack(); // Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); // MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); // this.Clear(); // return -1; //} } else { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } } } #endregion #region 处理药品 //处理药品 if (this.fpDrug_Sheet1.RowCount > 0) { for (int i = 0; i < fpDrug_Sheet1.RowCount; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList medicineItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList oldMedicineItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); if (this.fpDrug_Sheet1.Rows[i].Tag != null) { medicineItem = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList) this.fpDrug_Sheet1.Rows[i].Tag; oldMedicineItem = medicineItem.Clone(); medicineItem.ExtFlag2 = "3";//变更标志 //退费 ////这里是否更改成未摆药的更新发药申请的记录addbyhuazb //if (string.IsNullOrEmpty(medicineItem.ExecOper.ID)) //{ // Neusoft.FrameWork.Management.PublicTrans.RollBack(); // Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); // MessageBox.Show("保存出错出错" + "该患者有药未摆,请通知药房摆药以后再进行变更!"); // this.Clear(); // return -1; //} medicineItem.IsNeedUpdateNoBackQty = true; if (this.feeIntegrate.QuitItem(this.patientInfo, medicineItem) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } //收费 //存储旧处方号 oldMedicineItem.BalanceOper.User01 = oldMedicineItem.RecipeNO; oldMedicineItem.RecipeNO = this.InpatientManager.GetDrugRecipeNO(); oldMedicineItem.Patient.Pact.ID = this.cmbNewPact.SelectedItem.ID; oldMedicineItem.FeeOper.ID = this.InpatientManager.Operator.ID; oldMedicineItem.FeeOper.OperTime = this.InpatientManager.GetDateTimeFromSysDateTime(); //备份药品信息 alDruglistBackUp.Add(oldMedicineItem); //if (this.feeIntegrate.FeeItem(this.oENewPatientInfo, oldMedicineItem) == -1) //{ // t.RollBack(); // Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); // MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); // this.Clear(); // return -1; //} } else { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } } } #endregion #endregion if (this.radtIntegrate.SetPactShiftData(this.patientInfo, newObj, oldObj) != 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错"); this.Clear(); return(-1); } //获得更改后得患者信息 this.oENewPatientInfo = this.radtIntegrate.GetPatientInfomation(this.patientInfo.ID); if (this.oENewPatientInfo == null) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("获得变更后患者信息出错!!", "提示"); this.Clear(); return(-1); } #region 重新收费 #region 处理非药品 long returnValue = 0; this.medcareInterfaceProxy.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); returnValue = this.medcareInterfaceProxy.Connect(); if (returnValue < 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); //{0C35F3E3-2E72-4ae3-8809-FF3809DA2A16} Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("请确保待遇接口存在或正常初始化初始化失败" + this.medcareInterfaceProxy.ErrMsg); this.Clear(); return(-1); } returnValue = this.medcareInterfaceProxy.GetRegInfoInpatient(oENewPatientInfo); if (returnValue < 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); //{0C35F3E3-2E72-4ae3-8809-FF3809DA2A16} Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("待遇接口获得患者信息失败" + this.medcareInterfaceProxy.ErrMsg); this.Clear(); return(-1); } returnValue = this.medcareInterfaceProxy.UploadRegInfoInpatient(oENewPatientInfo); if (returnValue < 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); //{0C35F3E3-2E72-4ae3-8809-FF3809DA2A16} Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("待遇接口上传住院登记信息失败" + this.medcareInterfaceProxy.ErrMsg); this.Clear(); return(-1); } //处理非药品 if (alUndruglistBackUp.Count > 0) { for (int i = 0; i < alUndruglistBackUp.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList oldUndrugItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); oldUndrugItem = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList)alUndruglistBackUp[i]; if (this.feeIntegrate.FeeItem(this.oENewPatientInfo, oldUndrugItem) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } } } #endregion #region 处理药品 //处理药品 if (alDruglistBackUp.Count > 0) { for (int i = 0; i < alDruglistBackUp.Count; i++) { Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList oldMedicineItem = new Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList(); oldMedicineItem = (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList)alDruglistBackUp[i]; if (oldMedicineItem != null) { if (this.feeIntegrate.FeeItem(this.oENewPatientInfo, oldMedicineItem.Clone()) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } //这里收费完已经发药的senddrug_flag未更新。addbyhuazb if (this.InpatientManager.UpdateMedItemExecInfo(oldMedicineItem.RecipeNO, oldMedicineItem.SequenceNO , oldMedicineItem.UpdateSequence, oldMedicineItem.SendSequence, (int)oldMedicineItem.PayType, oldMedicineItem.StockOper.Dept.ID, oldMedicineItem.ExecOper.ID, oldMedicineItem.ExecOper.OperTime) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); this.medcareInterfaceProxy.Rollback(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("调用中间层出错" + this.feeIntegrate.Err); this.Clear(); return(-1); } //更新处方号 if (pharmacyIntegrate.UpdateApplyOutRecipe(oldMedicineItem.BalanceOper.User01, oldMedicineItem.SequenceNO, oldMedicineItem.RecipeNO, oldMedicineItem.SequenceNO) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.Management.PublicTrans.RollBack(); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); MessageBox.Show("更新药品申请表处方号信息发生错误!" + pharmacyIntegrate.Err); this.Clear(); return(-1); } } } } #endregion #endregion Neusoft.FrameWork.Management.PublicTrans.Commit(); this.medcareInterfaceProxy.Commit(); MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("变更成功")); Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); //重新显示介面 this.SetpatientInfo(this.oENewPatientInfo); //重新显示费用明细 this.DisplayDetail(this.oENewPatientInfo.ID); return(1); }
public int UpdateFeeItemListInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f) { System.Data.IDbCommand cmd = null; cmd.Connection = ConnectTT; cmd.ExecuteNonQuery(); return(1); }
public int RecomputeFeeItemListInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList) { feeItemList.FT.OwnCost = feeItemList.FT.TotCost; feeItemList.FT.PayCost = 0m; feeItemList.FT.PubCost = 0m; return(1); }
/// <summary> /// 住院重新计算费用明细 /// </summary> /// <param name="patient">住院患者基本信息</param> /// <param name="f">住院费用单条明细</param> /// <returns>成功 1 失败 -1</returns> public int RecomputeFeeItemListInpatient(Neusoft.HISFC.Models.RADT.PatientInfo patient, Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList f) { try { if (!this.IsValid(patient)) { return(-1); } int returnValue = this.medcaredInterface.RecomputeFeeItemListInpatient(patient, f); if (returnValue <= 0) { this.errMsg = this.medcaredInterface.ErrMsg; } return(returnValue); } catch (Exception e) { this.errMsg = e.Message; return(-1); } }
/// <summary> /// 处理费用明细和费用汇总表 /// </summary> /// <param name="balanceNO">负记录结算序号</param> /// <param name="nowTime">当前时间</param> /// <param name="errText">错误信息</param> /// <returns>成功 1 失败 -1</returns> public int DealFeeInfoAndFeeItemList(int balanceNO, DateTime nowTime, ref string errText) { int returnValue = 0;//方法返回值 ArrayList feeItemLists = this.QueryUnQuitItems(false); if (feeItemLists == null) { errText = "获得未退费明细出错!"; return(-1); } ArrayList feeItemListsQuit = new ArrayList(); foreach (Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemList in feeItemLists) { //获得项目明细的详细信息 //Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemTemp = this.inpatientManager.GetItemListByRecipeNO(feeItemList.RecipeNO, feeItemList.SequenceNO, feeItemList.Item.IsPharmacy); Neusoft.HISFC.Models.Fee.Inpatient.FeeItemList feeItemTemp = this.inpatientManager.GetItemListByRecipeNO(feeItemList.RecipeNO, feeItemList.SequenceNO, feeItemList.Item.ItemType); if (feeItemTemp == null) { errText = "获得费用明细出错!" + this.inpatientManager.Err; return(-1); } //if (feeItemTemp.Item.IsPharmacy) if (feeItemTemp.Item.ItemType == Neusoft.HISFC.Models.Base.EnumItemType.Drug) { //判断作废发药申请 if (feeItemTemp.PayType == Neusoft.HISFC.Models.Base.PayTypes.Balanced) { returnValue = base.phamarcyIntegrate.CancelApplyOut(feeItemTemp.RecipeNO, feeItemTemp.SequenceNO); if (returnValue == -1) { errText = "作废发药申请出错!" + base.phamarcyIntegrate.Err; return(-1); } } } else { //重新查找非药品所对应的物资信息 List <HISFC.Models.FeeStuff.Output> outputList = mateInteger.QueryOutput(feeItemTemp); if (outputList != null) { foreach (HISFC.Models.FeeStuff.Output outItem in outputList) { //生成可退数量 outItem.StoreBase.Item.Qty = outItem.StoreBase.Quantity - outItem.StoreBase.Returns - outItem.ReturnApplyNum; } feeItemTemp.MateList = outputList; } } //feeItemTemp.FT.TotCost = -feeItemTemp.FT.TotCost; //feeItemTemp.FT.OwnCost = -feeItemTemp.FT.OwnCost; //feeItemTemp.FT.PayCost = -feeItemTemp.FT.PayCost; //feeItemTemp.FT.PubCost = -feeItemTemp.FT.PubCost; //feeItemTemp.Item.Qty = -feeItemTemp.Item.Qty; feeItemTemp.BalanceOper.ID = this.inpatientManager.Operator.ID; feeItemTemp.ChargeOper.OperTime = nowTime; feeItemTemp.FeeOper.ID = this.inpatientManager.Operator.ID; feeItemTemp.FeeOper.OperTime = nowTime; feeItemTemp.TransType = Neusoft.HISFC.Models.Base.TransTypes.Negative; feeItemTemp.BalanceNO = balanceNO; feeItemListsQuit.Add(feeItemTemp); } this.feeIntegrate.IsIgnoreInstate = true; returnValue = base.feeIntegrate.QuitItem(this.patientInfo, ref feeItemListsQuit); this.feeIntegrate.IsIgnoreInstate = false; if (returnValue == -1) { errText = "插入费用负记录出错!" + base.feeIntegrate.Err; this.feeIntegrate.IsIgnoreInstate = false; return(-1); } return(1); }