public ProductController(IProductCategoryService productCategoryService,
                          IProductService productService,
                          IDynamicServiceAsync <ProductDynamic, Product> productUniversalService,
                          IInventoryCategoryService inventoryCategoryService,
                          IProductReviewService productReviewService,
                          ILoggerFactory loggerProvider,
                          ISettingService settingService,
                          IDynamicMapper <ProductDynamic, Product> mapper,
                          ICsvExportService <ProductCategoryStatisticTreeItemModel, ProductCategoryStatisticTreeItemCsvMap> productCategoryStatisticTreeItemCSVExportService,
                          ICsvExportService <SkuBreakDownReportItem, SkuBreakDownReportItemCsvMap> skuBreakDownReportItemCSVExportService,
                          ICsvExportService <SkuAverageDailySalesBySkuReportItem, SkuAverageDailySalesBySkuReportItemCsvMap>
                          skuAverageDailySalesBySkuReportItemCsvMapCSVExportService,
                          ICsvExportService <SkuAverageDailySalesByProductReportItem, SkuAverageDailySalesByProductReportItemCsvMap>
                          skuAverageDailySalesProductReportItemCsvMapCSVExportService,
                          IObjectHistoryLogService objectHistoryLogService,
                          ExtendedUserManager userManager,
                          IAgentService agentService,
                          IDynamicMapper <SkuDynamic, Sku> skuMapper,
                          AppSettings appSettings,
                          ICacheProvider cache)
 {
     this.productCategoryService   = productCategoryService;
     this.inventoryCategoryService = inventoryCategoryService;
     this.productService           = productService;
     this.productUniversalService  = productUniversalService;
     this.productReviewService     = productReviewService;
     this.settingService           = settingService;
     this.productCategoryStatisticTreeItemCSVExportService = productCategoryStatisticTreeItemCSVExportService;
     _skuBreakDownReportItemCSVExportService = skuBreakDownReportItemCSVExportService;
     this.objectHistoryLogService            = objectHistoryLogService;
     _userManager  = userManager;
     _agentService = agentService;
     _skuMapper    = skuMapper;
     _appSettings  = appSettings;
     _mapper       = mapper;
     _skuAverageDailySalesBySkuReportItemCsvMapCSVExportService   = skuAverageDailySalesBySkuReportItemCsvMapCSVExportService;
     _skuAverageDailySalesProductReportItemCsvMapCSVExportService = skuAverageDailySalesProductReportItemCsvMapCSVExportService;
     _cache      = cache;
     this.logger = loggerProvider.CreateLogger <ProductController>();
 }
 public InventoryCategoriesController(IInventoryCategoryService inventoryCategoryService)
 {
     _inventoryCategoryService = inventoryCategoryService;
 }