public SiteCordBloodTransplantTotal SaveSiteCordBloodTransplantTotal(SiteCordBloodTransplantTotalItem item, string savedBy) { var siteCordbloodTransplantTotalManager = this.container.GetInstance <SiteCordBloodTransplantTotalManager>(); var cbUnitTypeManager = this.container.GetInstance <CBUnitTypeManager>(); var cbCategoryManager = this.container.GetInstance <CBCategoryManager>(); var unitType = cbUnitTypeManager.GetByName(item.CbUnitType.Name); var category = cbCategoryManager.GetByName(item.CbCategory.Name); if (unitType == null || category == null) { throw new Exception("Cannot find data"); } var result = siteCordbloodTransplantTotalManager.SaveSiteCordBloodTransplantTotal(unitType, category, item.Id, item.SiteId, item.NumberOfUnits, Convert.ToDateTime(item.AsOfDate), savedBy); this.InvalidateCache(savedBy); return(result); }
public async Task <ServiceResponse <SiteCordBloodTransplantTotalItem> > SaveSiteCordBloodTransplantTotal( SiteCordBloodTransplantTotalItem model) { DateTime startTime = DateTime.Now; var siteFacade = this.Container.GetInstance <SiteFacade>(); try { var item = await siteFacade.SaveSiteCordBloodTransplantTotalAsync(model, base.Email); base.LogMessage("SaveSiteCordBloodTransplantTotal", DateTime.Now - startTime); if (!model.Id.HasValue) { item.CbCategory = new CBCategory { Id = 0, Name = model.CbCategory.Name }; item.CbUnitType = new CBUnitType { Id = 0, Name = model.CbUnitType.Name }; } return(new ServiceResponse <SiteCordBloodTransplantTotalItem> { Item = ModelConversions.Convert(item) }); } catch (Exception ex) { return(base.HandleException <SiteCordBloodTransplantTotalItem>(ex)); } }
public async Task <SiteCordBloodTransplantTotal> SaveSiteCordBloodTransplantTotalAsync(SiteCordBloodTransplantTotalItem item, string savedBy) { var siteCordbloodTransplantTotalManager = this.container.GetInstance <SiteCordBloodTransplantTotalManager>(); var cbUnitTypeManager = this.container.GetInstance <CBUnitTypeManager>(); var cbCategoryManager = this.container.GetInstance <CBCategoryManager>(); var unitTypeTask = cbUnitTypeManager.GetByNameAsync(item.CbUnitType.Name); var categoryTask = cbCategoryManager.GetByNameAsync(item.CbCategory.Name); await Task.WhenAll(unitTypeTask, categoryTask); if (unitTypeTask == null || categoryTask == null) { throw new Exception("Cannot find data"); } var result = await siteCordbloodTransplantTotalManager.SaveSiteCordBloodTransplantTotalAsync(unitTypeTask.Result, categoryTask.Result, item.Id, item.SiteId, item.NumberOfUnits, Convert.ToDateTime(item.AsOfDate), savedBy); await this.InvalidateCacheAsync(savedBy); return(result); }