public InventoryController(IInventoryContract inventoryContract,
                                   IStoreContract storeContract,
                                   IStorageContract storageContract,
                                   IProductContract productContract,
                                   IBrandContract brandContract,
                                   ICategoryContract categoryContract,
                                   IColorContract colorContract,
                                   ILogContract logContract,
                                   IProductBarcodeDetailContract productBarcodeDetailContract,
                                   IProductBarcodePrintInfoContract productBarcodePrintInfoContract,
                                   IInventoryRecordContract inventoryRecordContract,
                                   IStoreRecommendContract storeRecommendContract,
                                   ISeasonContract seasonContract,
                                   IProductTrackContract productTrackContract,
                                   IAdministratorContract administratorContract)
        {
            _administratorContract           = administratorContract;
            _inventoryContract               = inventoryContract;
            _storeContract                   = storeContract;
            _productContract                 = productContract;
            _storageContract                 = storageContract;
            _brandContract                   = brandContract;
            _categoryContract                = categoryContract;
            _colorContract                   = colorContract;
            _productBarcodePrintInfoContract = productBarcodePrintInfoContract;
            _productBarcodeDetailContract    = productBarcodeDetailContract;
            _logContract             = logContract;
            _inventoryRecordContract = inventoryRecordContract;
            _storeRecommendContract  = storeRecommendContract;
            _seasonContract          = seasonContract;
            _productTrackContract    = productTrackContract;

            ViewBag.Products = CacheAccess.GetProductListItem(_productContract, true);
        }