コード例 #1
0
 /**
  * @Route("/transaction/find", name="findTransactions")
  */
 public function findTransactionsAction(Request $oRequest)
 {
     // $aCategories = $this->container->getParameter('categories');
     $nPages = $nFirstResult = 0;
     $aRequest = $oRequest->request->all();
     $nPage = isset($aRequest['page']) ? $aRequest['page'] : 1;
     $nPerPage = $this->container->getParameter('per_page');
     $sWording = !empty($aRequest['wording']) ? $aRequest['wording'] : null;
     if ($nPage > 1) {
         $nFirstResult = $nPerPage * ($nPage - 1);
     }
     if (!empty($aRequest['date_begin']) && !empty($aRequest['date_end'])) {
         $oAccount = $this->getRepoEntity('Account')->find($aRequest['account']);
         $sDateBegin = $aRequest['date_begin'];
         $sDateEnd = $aRequest['date_end'];
         $nCategId = $aRequest['category'];
         $oRepTransaction = $this->getRepoEntity('Transaction');
         $oCategory = null;
         if ($nCategId != 0) {
             $oCategory = $this->getRepoEntity('Category')->findOneById($nCategId);
         }
         $aoTransactions = $oRepTransaction->findByAccount($oAccount, $sDateBegin, $sDateEnd, $oCategory, $sWording, null, $nFirstResult, $nPerPage);
         $nPages = Help::getNumberPages($aoTransactions['TotalRecordCount'], $nPerPage);
     }
     return $this->render('AnalyzerBundle:Transaction:list.html.twig', array('aoTransactions' => $aoTransactions, 'nPages' => $nPages, 'currentPage' => $nPage));
 }