public function convertSingleToArray($data) { // echo '<pre>'; // print_r($data); // echo '</pre>'; $catInfo = Utility::getCatInfo($data->getCatId()); $array = array(); $array['id'] = $data->getId(); $array['name'] = $data->getName(); $array['function'] = Utility::getMenuStoreInMenu($data->getId()); $array['desc'] = $data->getDescription(); $array['image'] = $data->getImage(); $array['catId'] = $catInfo->getName(); $array['cost'] = $data->getCost(); $array['taCost'] = $data->getTakeAwayCost(); $array['isCombo'] = Utility::getCombo(number_format($data->getIsCombo())); return $array; }
public function indexAction() { if ($this->getRequest()->isPost()) { $str = ''; $strOrder = ''; $fromDate = ''; $toDate = ''; $strUser = ''; $strMenu = ''; $strMenuForAllMenu = ''; $params = $this->params()->fromPost(); $fromDate = $params['formDate']; $toDate = $params['toDate']; $user = $params['user']; $strUserOrder = ''; $userText = ''; $fromText = ''; $toText = ''; $menuText = ''; if ($fromDate) { $fromDateTime = strtotime($fromDate . ' 00:00:00'); $str .= ' AND table.createDate >= ' . $fromDateTime; $strOrder .= ' AND o.createDate >= ' . $fromDateTime; $fromText = $this->translator->translate('from ') . date('d-m-Y', $fromDateTime); } if ($toDate) { $toDateTime = strtotime($toDate . ' 23:59:00'); $str .= ' AND table.createDate <= ' . $toDateTime; $strOrder .= ' AND o.createDate <= ' . $toDateTime; $toText = $this->translator->translate(' to ') . date('d-m-Y', $toDateTime); } if (isset($params['user']) && $params['user'] != 0) { $strUserOrder .= ' AND table.userId = ' . $user; $strUser .= ' AND table.userId = ' . $user; $userInfo = Utility::getUserInfo($user); $userText = $this->translator->translate(' by ') . $userInfo->getUserName(); } if (isset($params['menu']) && $params['menu'] != 0) { $strMenu .= ' AND mn.catId =' . $params['menu']; $strMenuForAllMenu .= ' AND table.id = od.orderId AND od.menuId = mn.id ' . $strMenu; $menuInfo = Utility::getCatInfo($params['menu']); $menuText = $this->translator->translate(' in ') . $menuInfo->getName(); } // fetch data $orderBy = " "; $reportMenu = $this->modelOrderDetail->createQueryMenu('table.isdelete = 0 ' . $strOrder . $strMenu); $reportMenu = reportModel::convertMenuReportArray($reportMenu); $reporAllOrder = $this->modelOrder->createQueryAllMenu('table.isdelete = 0 ' . $str . $strUser); /* report order and count cost by menu id */ if (isset($params['menu']) && $params['menu'] != 0) { $reporAllOrder = $this->modelOrder->createQueryByMenu('table.isdelete = 0 ' . $str . $strUser . $strMenuForAllMenu); } // echo '<pre>'; // print_r($reportMenu); // echo '<hr/>'; // print_r($reporAllOrder); // die; // remove all report file Utility::deleteAllFileInFolder('public/export/'); $link = renderExcel::renderMenuOrder($reportMenu); $reportText = $this->translator->translate('Report ') . $fromText . $toText . $userText . $menuText; $dataMenu = array('tableTitle' => $this->translator->translate('Report menu'), 'link' => 'admin/order', 'data' => $reportMenu, 'heading' => array('orderDetailId' => $this->translator->translate('Order Detail Id'), 'OrderId' => $this->translator->translate('Order Id'), 'menuId' => $this->translator->translate('Name'), 'menuName' => $this->translator->translate('Menu'), 'count_menu' => $this->translator->translate('Count number'), 'realCost' => $this->translator->translate('Real cost'), 'time' => $this->translator->translate('Time')), 'hideEditButton' => 1, 'hideDeleteButton' => 1, 'hideDetailButton' => 1); return new ViewModel(array('totalTable' => $reporAllOrder[0]['count_table'], 'tCost' => $reporAllOrder[0]['tCost'], 'tRCost' => $reporAllOrder[0]['tRCost'], 'excelLink' => $link, 'reportText' => $reportText, 'reportMenu' => $dataMenu, 'title' => $this->translator->translate('Report'))); } return new ViewModel(array('title' => $this->translator->translate('Report'))); }
public function ajaxListAction() { $fields = array('id', 'name', 'cost', 'takeAwayCost', 'description', 'catId', 'isdelete'); $offset = $this->getDataTableQueryOffset(); $limit = $this->getDataTableQueryLimit(); $sortCol = $this->getDataTableQuerySortingColumn(); $sortDirection = $this->getDataTableQuerySortingDirection(); $search = $this->getDataTableQuerySearch(); $customWhere = ' c.isdelete = 0'; // WHERE conditions $customQuery = $this->customWhereSql($customWhere); $dqlWhere = $this->getDataTableWhereDql('c', $fields, $search, $customWhere); if (!empty($dqlWhere)) { $customQuery = ''; } // ORDERING $dqlOrder = $this->getDataTableOrderDql('c', $fields, $sortCol, $sortDirection); // DQL $dql = "SELECT c FROM Admin\\Entity\\Menu c "; // RESULTS $query = $this->getEntityManager()->createQuery($dql . $customQuery . $dqlWhere . $dqlOrder); //$parameter = array('isdelete'=>0); if (!empty($dqlWhere)) { $query->setParameter(':search', '%' . $search . '%'); } $results = $query->setMaxResults($limit)->setFirstResult($offset)->getResult(); // echo $query->getSQL(); // TOTAL RESULTS COUNT $countDql = "SELECT COUNT(c.id) FROM Admin\\Entity\\Menu c"; $count = $this->getEntityManager()->createQuery($countDql)->getSingleScalarResult(); $ret = array_map(function ($item) { $categoryInfo = Utility::getCatInfo($item->getCatId()); $formular = Utility::getMenuStoreInMenu($item->getId()); $linkEdit = '/admin/index/add/' . $item->getId(); $linkDelete = '/admin/index/delete/' . $item->getId(); $linkDetail = '/admin/index/detail/' . $item->getId(); return array('id' => $item->getId(), 'name' => $item->getName(), 'cost' => $item->getCost(), 'takeAwayCost' => $item->getTakeAWayCost(), 'description' => $item->getDescription(), 'catId' => $categoryInfo->getName(), 'formula' => $formular, 'action' => ' <a href="' . $linkDetail . '" class="btn btn-info"><i class="icon-edit-sign"></i></a> <a class="btn btn-primary" href="' . $linkEdit . '"><i class="icon-edit-sign"></i></a> <a id="' . $item->getId() . '" data-link="' . $linkDelete . '" data-id="' . $item->getId() . '" href="#" class="btn btn-danger btn-delete"><i class="icon-trash"></i></a>'); }, $results); return $this->getDataTableJsonResponse($ret, $count, $dqlWhere); }