/// <summary> /// Add an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public InventoryViewModel Add(InventoryViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._InventorysRepository.Add(entity); var entityAr = new Inventory() { Id = entity.Id, Name = model.NameAr, Description = model.DescriptionAr, Language = Language.Arabic }; entity.ChildTranslatedInventorys.Add(entityAr); this._InventorysRepository.Add(entityAr); var entityEn = new Inventory() { Id = entity.Id, Name = model.NameEn, Description = model.DescriptionEn, Language = Language.English }; entity.ChildTranslatedInventorys.Add(entityEn); this._InventorysRepository.Add(entityEn); #region Commit Changes this._unitOfWork.Commit(); #endregion Address address = this._AddresssRepository.Get().FirstOrDefault(x => x.ObjectId == entity.Id && x.ObjectType == ObjectType.Inventory); if (address == null) { address = new Address { ObjectId = entity.Id, ObjectType = ObjectType.Inventory, Description = model.Address, IsActive = true, IsMain = true }; this._AddresssRepository.Add(address); } else { address.Description = model.Address; this._AddresssRepository.Update(address); } #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
/// <summary> /// Delete an entity. /// </summary> /// <param name="model"></param> public void Delete(InventoryViewModel model) { var entity = model.ToEntity(); this._InventorysRepository.Delete(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion }