/// <summary> /// 申请信息显示 /// </summary> /// <param name="drugRecipe">门诊处方调剂信息</param> /// <param name="state">门诊处方状态</param> public virtual void ShowData(Neusoft.HISFC.Models.Pharmacy.DrugRecipe drugRecipe) { if (drugRecipe == null) { return; } this.tempDrugRecipe = drugRecipe; this.ShowPatientInfo(drugRecipe); string state = ""; switch (drugRecipe.RecipeState) { case "0": case "1": state = "0"; break; case "2": state = "1"; break; case "3": state = "2"; break; } Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item(); ArrayList al = itemManager.QueryApplyOutListForClinic(this.OperDept.ID, "M1", state, drugRecipe.RecipeNO); if (al == null) { MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("根据调剂信息获取申请明细信息发生错误") + itemManager.Err); return; } this.ShowData(al); }
/// <summary> /// 科室发药保存 /// </summary> /// <returns>成功返回1 失败返回-1</returns> protected int SavePatient() { List <Neusoft.HISFC.Models.Pharmacy.DrugRecipe> alPatient = this.GetCheckPatient(); if (alPatient == null || alPatient.Count == 0) { return(1); } Neusoft.FrameWork.Models.NeuObject sentTerminal = new Neusoft.FrameWork.Models.NeuObject(); if (this.cmbSendTerminal.Tag == null || this.cmbSendTerminal.Tag.ToString() == "") { MessageBox.Show(Language.Msg("请选择发药终端")); return(-1); } sentTerminal.ID = this.cmbSendTerminal.Tag.ToString(); Neusoft.HISFC.BizLogic.Pharmacy.Item itemManager = new Neusoft.HISFC.BizLogic.Pharmacy.Item(); string state = "1"; foreach (Neusoft.HISFC.Models.Pharmacy.DrugRecipe drugRecipe in alPatient) { if (drugRecipe.RecipeState == "0" || drugRecipe.RecipeState == "1") { state = "0"; } else { state = "1"; } #region 更新处方状态 int parm = this.drugStoreManager.UpdateDrugRecipeState(this.privDept.ID, drugRecipe.RecipeNO, "M1", "0", "1"); if (parm == -1) { MessageBox.Show(Language.Msg("更新未打印状态为已打印状态失败!") + this.drugStoreManager.Err); this.QueryPatientList(); return(-1); } #endregion ArrayList al = itemManager.QueryApplyOutListForClinic(this.privDept.ID, "M1", state, drugRecipe.RecipeNO); if (al == null) { MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("根据调剂信息获取申请明细信息发生错误") + itemManager.Err); this.QueryPatientList(); return(-1); } if (Function.OutpatientSend(this.ConvertApplyOutToList(al), sentTerminal, this.privDept, this.privOper, true, true) == -1) { MessageBox.Show(Language.Msg("对 " + drugRecipe.PatientName + " 进行发药处理时发生错误")); this.QueryPatientList(); return(-1); } } MessageBox.Show(Language.Msg("保存成功")); this.QueryPatientList(); return(1); }