public int MaterialOutput(Neusoft.HISFC.Models.Fee.FeeItemBase feeItem, System.Data.IDbTransaction trans, ref bool isCompare, ref List <Neusoft.HISFC.Models.FeeStuff.Output> outListCollect) { if (this.CreatInstance() < 0) { return(1); } return(this.matFeeAchieve.MaterialOutput(feeItem, trans, ref isCompare, ref outListCollect)); }
/// <summary> /// 物资扣库 /// </summary> /// <param name="feeItem"></param> /// <param name="isCompare"></param> /// <param name="outList"></param> /// <returns></returns> public int MaterialOutput(Neusoft.HISFC.Models.Fee.FeeItemBase feeItem, System.Data.IDbTransaction trans, ref bool isCompare, ref List <Neusoft.HISFC.Models.FeeStuff.Output> outListCollect) { return(1); /*{6F1AD0FE-B6EE-446a-85B6-CEE1BC22C55D} integrate屏蔽物资部分 * if (trans != null) * { * this.SetTrans(trans); * } * #region 物资出库项目处理(对照项目/物资项目) 库存判断 * * List<Neusoft.HISFC.Models.FeeStuff.MaterialItem> compareMaterialCollect = null; * if (feeItem.Item.IsMaterial) //传入项目为物资项目 直接根据物资项目完成扣库 * { * compareMaterialCollect = new List<Neusoft.HISFC.Models.FeeStuff.MaterialItem>(); * compareMaterialCollect.Add(feeItem.Item as Neusoft.HISFC.Models.FeeStuff.MaterialItem); * isCompare = false; * } * else //传入项目为非药品项目 根据对照物资项目完成扣库 * { * compareMaterialCollect = itemManager.QueryCompareMaterial(feeItem.Item.ID); * if (compareMaterialCollect == null) * { * this.Err = itemManager.Err; * return -1; * } * if (compareMaterialCollect.Count == 0) //非药品项目且未进行对照 则直接返回 * { * isCompare = false; * return 1; * } * isCompare = true; * } * #endregion * * decimal totQty = feeItem.Item.Qty; * * foreach (Neusoft.HISFC.Models.FeeStuff.MaterialItem info in compareMaterialCollect) * { * if (totQty <= 0) * { * break; * } * #region 本物资项目库存判断 * * decimal qty; * if (storeManager.GetStoreQty(feeItem.ExecOper.Dept.ID, feeItem.Item.ID, out qty) == -1) * { * return -1; * } * if (qty <= 0) * { * continue; * } * #endregion * * decimal outQty = totQty > qty ? qty : totQty; //本次实际出库量 * #region 形成出库实体信息 * * Neusoft.HISFC.Models.FeeStuff.Output output = new Neusoft.HISFC.Models.FeeStuff.Output(); * output.StoreBase.Item = info; * output.StoreBase.PrivType = "Z1"; * output.StoreBase.SystemType = "Z1"; * output.StoreBase.StockDept = feeItem.ExecOper.Dept; * output.StoreBase.TargetDept = feeItem.ExecOper.Dept; * * output.StoreBase.Quantity = outQty; * output.StoreBase.Operation.Oper = feeItem.FeeOper; * output.StoreBase.Operation.ExamOper = feeItem.FeeOper; * output.GetPerson.ID = feeItem.Patient.ID; * * output.StoreBase.State = "2"; #endregion * #region 物资出库处理 * * List<Neusoft.HISFC.Models.FeeStuff.Output> tempOutList = new List<Neusoft.HISFC.Models.FeeStuff.Output>(); * if (storeManager.Output(output, ref tempOutList) == -1) * { * this.Err = storeManager.Err; * return -1; * } * //实际出库信息保存 * outListCollect.AddRange(tempOutList); #endregion * * totQty = totQty - outQty; * } * * if (totQty > 0) * { * this.Err = "物资项目库存不足"; * return -1; * } * * return 1; */ }