public virtual coreModel.Pricelist CreatePricelist(coreModel.Pricelist priceList) { var entity = priceList.ToDataModel(); using (var repository = _repositoryFactory()) { repository.Add(entity); CommitChanges(repository); } return(GetPricelistById(entity.Id)); }
public virtual coreModel.Price CreatePrice(coreModel.Price price) { var entity = price.ToDataModel(); using (var repository = _repositoryFactory()) { //Need assign price to default pricelist with same currency or create it if not exist if (price.PricelistId == null) { var defaultPriceListId = GetDefaultPriceListName(price.Currency); var dbDefaultPriceList = repository.GetPricelistById(defaultPriceListId); if (dbDefaultPriceList == null) { var defaultPriceList = new coreModel.Pricelist { Id = defaultPriceListId, Currency = price.Currency, Name = defaultPriceListId, Description = defaultPriceListId }; dbDefaultPriceList = defaultPriceList.ToDataModel(); } entity.PricelistId = dbDefaultPriceList.Id; entity.Pricelist = dbDefaultPriceList; repository.Add(entity); CommitChanges(repository); //Automatically create catalog assignment TryToCreateCatalogAssignment(entity, repository); ResetCache(); } } price.Id = entity.Id; var retVal = GetPriceById(entity.Id); return(retVal); }
public virtual coreModel.Price CreatePrice(coreModel.Price price) { var entity = price.ToDataModel(); using (var repository = _repositoryFactory()) { //Need assign price to default pricelist with same currency or create it if not exist if (price.PricelistId == null) { var defaultPriceListId = GetDefaultPriceListName(price.Currency); var dbDefaultPriceList = repository.GetPricelistById(defaultPriceListId); if (dbDefaultPriceList == null) { var defaultPriceList = new coreModel.Pricelist { Id = defaultPriceListId, Currency = price.Currency, Name = defaultPriceListId, Description = defaultPriceListId }; dbDefaultPriceList = defaultPriceList.ToDataModel(); } entity.PricelistId = dbDefaultPriceList.Id; entity.Pricelist = dbDefaultPriceList; repository.Add(entity); CommitChanges(repository); //Automatically create catalog assignment TryToCreateCatalogAssignment(entity, repository); } } price.Id = entity.Id; var retVal = GetPriceById(entity.Id); return retVal; }