public bool DelDrug(string drugId, string deptid) { DrugStockOutEntity entity = dsoservice.GetEntity(drugId); var list = service.GetList(deptid).Where(x => x.DrugName == entity.DrugName && x.DrugLevel == entity.DrugLevel && x.BZId == "deptid").ToList(); foreach (DrugEntity d in list) { service.DelDrug(d); } if (entity != null) { if (dsoservice.DelDrugStcokOut(entity)) { return(true); } else { return(false); } } else { return(false); } }
/// <summary> /// 药品出库 /// </summary> /// <param name="Id"></param> /// <param name="entity"></param> public void SaveDrugOut(string deptid, string Id, DrugStockEntity entity) { try { //出库时余量=余量-出库总量 //总量不变 DrugEntity drug = service.GetEntity(entity.DrugId); drug.Surplus = drug.Surplus - (decimal)entity.DrugNum * int.Parse(drug.Spec); drug.DrugNum = Convert.ToInt32(drug.DrugNum - entity.DrugNum); drug.OutNum += Convert.ToInt32(entity.DrugNum); drug.State = "1"; drug.OutSurplus += (decimal)entity.DrugNum * Convert.ToDecimal(drug.Spec); entity.DrugUnit = drug.Unit; entity.DrugName = drug.DrugName; entity.DrugLevel = drug.DrugLevelName + drug.DrugLevel; //entity.Surplus = drug.Surplus; entity.Type = "1"; entity.StockNum = drug.DrugNum; entity.BZId = drug.BZId; service.SaveDrug(drug.Id, drug); drugStock.SaveDrugStock(Id, entity); //若出库信息已存在该类药品,更新余量;否则新增一条 DrugStockOutEntity dso = new DrugStockOutEntity(); var dsolist = this.GetStockOutList(deptid, entity.DrugName, drug.DrugLevel).Where(x => x.BZId == drug.BZId); if (dsolist.Count() > 0) { dso = dsolist.SingleOrDefault(); dso.DrugInventoryId = drug.DrugInventoryId; dso.OutTotal += (decimal)entity.DrugNum * int.Parse(drug.Spec); dso.Total += (decimal)entity.DrugNum * int.Parse(drug.Spec); dso.Warn = Convert.ToDecimal(drug.Warn); this.SaveStockOut(dso.Id, dso); } else { dso.DrugInventoryId = drug.DrugInventoryId; dso.Id = Guid.NewGuid().ToString(); dso.OutTotal += (decimal)entity.DrugNum * int.Parse(drug.Spec); dso.Total += (decimal)entity.DrugNum * int.Parse(drug.Spec); dso.DrugName = entity.DrugName; dso.DrugUnit = entity.DrugUnit; dso.DrugLevel = drug.DrugLevel; dso.DrugLevelName = drug.DrugLevelName; dso.DrugId = entity.DrugId; dso.CreateDate = DateTime.Now; dso.BZId = drug.BZId; dso.CreateUserId = entity.CreateUserId; dso.CreateUserName = entity.CreateUserName; dso.Warn = Convert.ToDecimal(drug.Warn); this.SaveStockOut(dso.Id, dso); } } catch (Exception) { throw; } }
public void SaveStockOut(string Id, DrugStockOutEntity entity) { try { dsoservice.SaveDrugStockOut(Id, entity); } catch (Exception) { throw; } }
/// <summary> /// 药品取用 /// /// </summary> /// <param name="Id"></param> /// <param name="entity"></param> public void SaveDrugOutNew(string Id, DrugOutEntity entity) { try { //更新出库信息 (该id取的出库信息id) DrugStockOutEntity drug = dsoservice.GetEntity(entity.DrugId); drug.Total = drug.Total - entity.OutNum; dsoservice.SaveDrugStockOut(drug.Id, drug); //保存取用记录 entity.Id = Guid.NewGuid().ToString(); entity.DrugUnit = drug.DrugUnit; entity.DrugName = drug.DrugName; entity.DrugLevel = drug.DrugLevelName + "(" + drug.DrugLevel + ")"; entity.Surplus = drug.Total; entity.OutNum = entity.OutNum; drugOut.SaveDrugOut(Id, entity); } catch (Exception) { throw; } }