requestService = $requestService; $this->customerRepository = $customerRepository; } /** * {@inheritdoc} */ public function postSetSales($email, $secret, $id, $sales_rep) { return $this->requestService->post( $email, $secret, [$this, 'setSales'], ['id' => $id, 'sales_rep' => $sales_rep] ); } /** * {@inheritdoc} */ public function setSales($id, $sales_rep) { $result = []; try { $customer = $this->customerRepository->getById($id); $customer->setCustomAttribute('sales_rep', $sales_rep); if ($sales_rep == '' && $customer->getGroupId() == 2) { $customer->setGroupId(1); } $this->customerRepository->save($customer); $result[] = array('account' => $customer->getEmail(), 'error' => NULL); } catch (\Exception $e) { $result[] = array('account' => isset($customer) ? $customer->getEmail() : $id, 'error' => $e->getMessage()); } return $result; } }