marketplaceOrderRepository = $marketplaceOrderRepository; $this->marketplaceProductRepository = $marketplaceProductRepository; $this->facturisOrderRepository = $facturisOrderRepository; $this->facturisCustomerRepository = $facturisCustomerRepository; $this->facturisProductRepository = $facturisProductRepository; $this->settingsRepository = $settingsRepository; } public function sync() { $facturisCustomers = $this->facturisCustomerRepository->getAll(); $facturisProducts = $this->facturisProductRepository->getAll(); $this->marketplaceOrderRepository->setRemoteCustomers($facturisCustomers); $this->marketplaceOrderRepository->setRemoteProducts($facturisProducts); $this->marketplaceOrderRepository->setOrderedDaysAgo($this->settingsRepository->getOptionOrderedDaysAgo()); $this->marketplaceOrderRepository->setWithDiscount($this->settingsRepository->getOptionWithDiscount()); $withOutDiscount = true; $marketplaceProducts = $this->marketplaceProductRepository->getAll($withOutDiscount); $this->marketplaceOrderRepository->setLocalProducts((array) $marketplaceProducts); $marketplaceOrders = $this->marketplaceOrderRepository->getAll(); if(!empty($marketplaceOrders)) { foreach($marketplaceOrders as $marketplaceOrder) { $this->facturisOrderRepository->add($marketplaceOrder); } } } }