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);
 }
Esempio n. 2
0
 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);
 }