Example #1
0
 public UnitOfWork(
     DatabaseContext dbContext,
     IProductRepository productRepository,
     IProductReviewRepository productReviewRepository,
     IUserRepository userReviewRepository,
     ICouponRepository couponRepository,
     IOrderRepository orderRepository,
     IShipmentRepository shipmentRepository,
     IPaymentRepository paymentRepository,
     IHashMapRepository hashMapRepository,
     IUserOrderRepository userOrderRepository,
     IFeedbackRepository feedbackRepository)
 {
     _dbContext               = dbContext;
     _productRepository       = productRepository;
     _productReviewRepository = productReviewRepository;
     _userReviewRepository    = userReviewRepository;
     _couponRepository        = couponRepository;
     _orderRepository         = orderRepository;
     _shipmentRepository      = shipmentRepository;
     _paymentRepository       = paymentRepository;
     _hashMapRepository       = hashMapRepository;
     _userOrderRepository     = userOrderRepository;
     _feedbackRepository      = feedbackRepository;
 }
Example #2
0
        public ProductServiceTests()
        {
            _productRepository       = Substitute.For <IProductRepository>();
            _productReviewRepository = Substitute.For <IProductReviewRepository>();

            _productService = new ProductService(_productRepository, _productReviewRepository);
        }
Example #3
0
 public ProductReviewService(IProductReviewRepository productReviewRepository, IAppSettingsRepository appSettingsRepository)
 {
     this._productReviewRepository = productReviewRepository ??
                                     throw new ArgumentNullException(nameof(productReviewRepository));
     this._appSettingsRepository = appSettingsRepository ??
                                   throw new ArgumentNullException(nameof(appSettingsRepository));
 }
Example #4
0
 public ProductService(
     IProductRepository productRepository,
     IProductReviewRepository productReviewRepository)
 {
     _productRepository       = productRepository;
     _productReviewRepository = productReviewRepository;
 }
 public ProductReviewService(IProductReviewRepository productReviewRepository, IAppSettingsRepository appSettingsRepository, IIOServiceContext context)
 {
     _productReviewRepository = productReviewRepository ??
                                throw new ArgumentNullException(nameof(productReviewRepository));
     _appSettingsRepository = appSettingsRepository ??
                              throw new ArgumentNullException(nameof(appSettingsRepository));
     _context = context ??
                throw new ArgumentNullException(nameof(context));
 }
Example #6
0
 public UnitOfWork(NicheShackContext context)
 {
     this.context   = context;
     Repository     = new Repository(context);
     Categories     = new CategoryRepository(context);
     Products       = new ProductRepository(context);
     Orders         = new OrderRepository(context);
     Lists          = new ListRepository(context);
     ProductReviews = new ProductReviewRepository(context);
 }
Example #7
0
 public ProductType(IProductReviewRepository productReviewRepository)
 {
     Field(it => it.Id);
     Field(it => it.Name);
     Field(it => it.Description);
     Field(it => it.IntroducedAt);
     Field(it => it.PhotoFileName);
     Field(it => it.Price);
     Field(it => it.Rating);
     Field(it => it.Stock);
     Field <ProductTypeEnumType>("Type", "The type of product");
     Field <ListGraphType <ProductReviewType> >("reviews", resolve: (context) => productReviewRepository.GetAll(context.Source.Id));
 }
Example #8
0
 public ProductReviewService(
     ILogger <IProductReviewRepository> logger,
     IProductReviewRepository productReviewRepository,
     IApiProductReviewRequestModelValidator productReviewModelValidator,
     IBOLProductReviewMapper bolproductReviewMapper,
     IDALProductReviewMapper dalproductReviewMapper)
     : base(logger,
            productReviewRepository,
            productReviewModelValidator,
            bolproductReviewMapper,
            dalproductReviewMapper)
 {
 }
 public AbstractProductReviewService(
     ILogger logger,
     IProductReviewRepository productReviewRepository,
     IApiProductReviewRequestModelValidator productReviewModelValidator,
     IBOLProductReviewMapper bolProductReviewMapper,
     IDALProductReviewMapper dalProductReviewMapper)
     : base()
 {
     this.ProductReviewRepository     = productReviewRepository;
     this.ProductReviewModelValidator = productReviewModelValidator;
     this.BolProductReviewMapper      = bolProductReviewMapper;
     this.DalProductReviewMapper      = dalProductReviewMapper;
     this.logger = logger;
 }
Example #10
0
 public CarvedRockMutation(IProductReviewRepository productReviewRepository)
 {
     FieldAsync <ProductReviewType>("createReview",
                                    arguments: new QueryArguments(
                                        new QueryArgument <NonNullGraphType <ProductReviewInputType> >
     {
         Name = "review"
     }),
                                    resolve: async context =>
     {
         var review = context.GetArgument <ProductReview>("review");
         await context.TryAsyncResolve(async c => await productReviewRepository.AddOneAsync(review));
         return(review);
     });
 }
Example #11
0
        public CarvedRockMutation(IProductReviewRepository productReviewRepository)
        {
            Field <ProductReviewType>(
                "createReview",
                arguments: new QueryArguments(new QueryArgument <ProductReviewInputType>()
            {
                Name = "review"
            }),
                resolve: (it) =>
            {
                var productReview = it.GetArgument <ProductReview>("review");

                return(productReviewRepository.Add(productReview));
            }
                );
        }
Example #12
0
        public ProductType(IProductReviewRepository productReviewRepository, IDataLoaderContextAccessor dataLoaderContextAccessor)
        //public ProductType()

        {
            Field(p => p.Id);
            Field(p => p.Name);
            Field(p => p.Price);
            Field <ProductTypeEnumType>("Type", "The type of product");
            Field <ListGraphType <ProductReviewType> >(
                "reviews",
                resolve: context =>
            {
                //return productReviewRepository.GetForProduct(context.Source.Id);
                var loader = dataLoaderContextAccessor.Context.GetOrAddCollectionBatchLoader <int, ProductReview>(
                    "GetReviewsByProductId", productReviewRepository.GetForProducts);
                return(loader.LoadAsync(context.Source.Id));
            }
                );
        }
Example #13
0
 public ProductType(IProductReviewRepository productReviewRepository, IDataLoaderContextAccessor dataLoaderContextAccessor)
 {
     Field(t => t.Id);
     Field(t => t.Name).Description("The name of the product");
     Field(t => t.Description);
     Field(t => t.IntroducedAt).Description("When the product was first introduced in the catalog");
     Field(t => t.PhotoFileName).Description("The file name of the photo so the client can render it");
     Field(t => t.Price);
     Field(t => t.Rating).Description("The (max 5) star customer rating");
     Field(t => t.Stock);
     Field <ProductTypeEnumType>("Type", "The type of product");
     Field <ListGraphType <ProductReviewType> >("Reviews",
                                                resolve:  context =>
     {
         var user   = (ClaimsPrincipal)context.UserContext["user"];
         var loader = dataLoaderContextAccessor.Context.GetOrAddCollectionBatchLoader <int, ProductReview>(
             "GetReviewsProductId", productReviewRepository.GetForProductsAsync);
         return(loader.LoadAsync(context.Source.Id));
     });
 }
Example #14
0
        public ProductType(IProductReviewRepository reviewRepository, IDataLoaderContextAccessor dataLoaderAccessor)
        {
            Field(t => t.Id);
            Field(t => t.Name).Description("The name of the product");
            Field(t => t.Description).Description("The description of the product");
            Field(t => t.Price).Description("The price of the product");
            Field(t => t.Stock).Description("The stock of the product");
            Field(t => t.Rating).Description("The rating of the product");
            Field(t => t.IntroducedAt).Description("When the product was introduced");
            Field(t => t.PhotoFileName).Description("The photo file name of the product");
            Field <ProductTypeEnumType>("Type", "The product type");

            Field <ListGraphType <ProductReviewType> >(
                "reviews",
                resolve: context =>
            {
                var loader = dataLoaderAccessor.Context.GetOrAddCollectionBatchLoader <int, ProductReview>(
                    "GetReviewsByProductId", reviewRepository.GetReviewsByProductId);

                return(loader.LoadAsync(context.Source.Id));
            });
        }
Example #15
0
 public ProductHelper(IProductReviewRepository productReviewRepository)
 {
     ProductReviewRepository = productReviewRepository;
 }
 public ProductReviewService(IProductReviewRepository productReviewRepository)
 {
     _productReviewRepository = productReviewRepository ??
                                throw new ArgumentNullException(nameof(productReviewRepository));
 }
Example #17
0
 public ProductDeletedEventConsumer(IMessagingService messagingService, IUnitOfWork unitOfWork, IProductReviewRepository productReviewRepository)
 {
     _messagingService        = messagingService;
     _unitOfWork              = unitOfWork;
     _productReviewRepository = productReviewRepository;
 }
		public ProductDeletedEventConsumer(IMessagingService messagingService, IUnitOfWork unitOfWork, IProductReviewRepository productReviewRepository)
		{
			_messagingService = messagingService;
			_unitOfWork = unitOfWork;
			_productReviewRepository = productReviewRepository;
		}
 public AbstractApiProductReviewRequestModelValidator(IProductReviewRepository productReviewRepository)
 {
     this.productReviewRepository = productReviewRepository;
 }
Example #20
0
 public ProductService(IUnitOfWork unitOfWork, IProductRepository productRepository, IProductReviewRepository productReviewRepository)
 {
     _unitOfWork              = unitOfWork;
     _productRepository       = productRepository;
     _productReviewRepository = productReviewRepository;
 }
 public ApiProductReviewRequestModelValidator(IProductReviewRepository productReviewRepository)
     : base(productReviewRepository)
 {
 }
Example #22
0
		public ProductService(IUnitOfWork unitOfWork, IProductRepository productRepository, IProductReviewRepository productReviewRepository)
		{
			_unitOfWork = unitOfWork;
			_productRepository = productRepository;
			_productReviewRepository = productReviewRepository;
		}