public ProductCommandHandlers( IUnitOfWork uow, IProductRepository repository, IProductPolicy policy, IPriceTypeRepository priceTypeRepository) { _uow = uow; _repository = repository; _policy = policy; _priceTypeRepository = priceTypeRepository; }
public ProductAppService(IRepository <MyPassword.Core.Product.Product> productRepository, IProductPolicy policy, IRepository <TenantFeatureSetting, long> tenantFeatureRepository, IAbpZeroFeatureValueStore abpZeroFeatureValueStore, AbpEditionManager abpEditionManager) { _abpEditionManager = abpEditionManager; _tenantFeatureRepository = tenantFeatureRepository; _productRepository = productRepository; _policy = policy; _abpZeroFeatureValueStore = abpZeroFeatureValueStore; }
public static Result <Product> New(Title title, IProductPolicy policy) { if (title == null) { throw new ArgumentNullException(nameof(title)); } if (policy == null) { throw new ArgumentNullException(nameof(policy)); } var product = new Product(title); if (!policy.IsUnique(product)) { return(Fail <Product>("Product Title Should Be Unique")); } product.RaiseDomainEvent(new ProductCreated(product)); return(Ok(product)); }
public void DeNumber(int num, IProductPolicy policy) { policy.CheckDeNumber(this, num); this.Number = num; }
public void UpdateNumber(int number, IProductPolicy policy) { policy.CheckNumber(number); this.Number = number; }
public void UpdatePrice(decimal price, IProductPolicy policy) { policy.CheckPrice(price); this.Price = price; }
public ProductAppService(IRepository <MyPassword.Core.Product.Product> productRepository, IProductPolicy policy) { _productRepository = productRepository; _policy = policy; }