public function historyAction(Request $request) { $clientAccountValuesManager = $this->get('wealthbot_client.client_account_values.manager'); $em = $this->get('doctrine.orm.entity_manager'); $paginator = $this->get('knp_paginator'); $session = $this->get('session'); $filters = $session->get('rebalance_history_filter', array()); $historyFilterForm = $this->createForm(new RebalanceHistoryFilterFormType(), $filters); if ($request->get('is_filter')) { $historyFilterFormHandler = new RebalanceHistoryFilterFormHandler($historyFilterForm, $request, $em, array('session' => $session)); if ($historyFilterFormHandler->process()) { $filters = $session->get('rebalance_history_filter', array()); } else { $this->getJsonResponse(array('status' => 'error', 'content' => $this->renderView('WealthbotRiaBundle:Rebalancer:_history_filter_form.html.twig', array('history_filter_form' => $historyFilterForm)))); } } $historyClientValuesQuery = $clientAccountValuesManager->getHistoryForAdminQuery($filters); $historyClientValuesPagination = $paginator->paginate($historyClientValuesQuery, $request->get('page', 1), 20); $historyClientValuesPagination->setUsedRoute('rx_admin_rebalancer_history'); $responseData = array('client_values_pagination' => $historyClientValuesPagination, 'is_history' => true, 'history_filter_form' => $historyFilterForm->createView()); if ($request->isXmlHttpRequest()) { return $this->getJsonResponse(array('status' => 'success', 'content' => $this->renderView('WealthbotAdminBundle:Rebalancer:_rebalance_table.html.twig', $responseData))); } return $this->render('WealthbotAdminBundle:Rebalancer:history.html.twig', $responseData); }
public function historyAction(Request $request) { $clientPortfolioValuesManager = $this->get('wealthbot_client.client_portfolio_values.manager'); $clientAccountValuesManager = $this->get('wealthbot_client.client_account_values.manager'); /** @var EntityManager $em */ $em = $this->get('doctrine.orm.entity_manager'); /* @var \Wealthbot\ClientBundle\Repository\LotRepository $lotRepo */ $lotRepo = $em->getRepository('WealthbotClientBundle:Lot'); $paginator = $this->get('knp_paginator'); $session = $this->get('session'); $ria = $this->getUser(); $isHouseholdLevel = $ria->getRiaCompanyInformation()->isHouseholdManagedLevel(); $filters = $session->get('rebalance_history_filter', array()); $historyFilterForm = $this->createForm(new RebalanceHistoryFilterFormType($ria), $filters); if ($request->get('is_filter')) { $historyFilterFormHandler = new RebalanceHistoryFilterFormHandler($historyFilterForm, $request, $em, array('session' => $session)); if ($historyFilterFormHandler->process()) { $filters = $session->get('rebalance_history_filter', array()); } else { $this->getJsonResponse(array('status' => 'error', 'content' => $this->renderView('WealthbotRiaBundle:Rebalancer:_history_filter_form.html.twig', array('history_filter_form' => $historyFilterForm)))); } } if ($isHouseholdLevel) { $historyClientValuesQuery = $clientPortfolioValuesManager->getHistoryForRiaClientsQuery($ria, $filters); } else { $historyClientValuesQuery = $clientAccountValuesManager->getHistoryForRiaClientsQuery($ria, $filters); } $historyClientValuesPagination = $paginator->paginate($historyClientValuesQuery, $request->get('page', 1), 20); $historyClientValuesPagination->setUsedRoute('rx_ria_rebalancing_history'); if ($isHouseholdLevel) { foreach ($historyClientValuesPagination as $historyClientValue) { $historyClientValue->setReconciled($lotRepo->isReconciled($historyClientValue->getDate())); } } else { foreach ($historyClientValuesPagination as $historyClientValue) { $historyClientValue->setReconciled($lotRepo->isReconciled($historyClientValue->getDate(), $historyClientValue->getSystemClientAccount())); } } $responseData = array('client_values_pagination' => $historyClientValuesPagination, 'ria' => $ria, 'is_history' => true, 'history_filter_form' => $historyFilterForm->createView()); if ($request->isXmlHttpRequest()) { return $this->getJsonResponse(array('status' => 'success', 'content' => $this->renderView('WealthbotRiaBundle:Rebalancer:_rebalance_table.html.twig', $responseData))); } return $this->render('WealthbotRiaBundle:Rebalancer:history.html.twig', $responseData); }