public static function fetchByType($type = 1, $filter, $order, $page = 1) { if ($type != 1 && $type != 2 && $type != 3) { return array(); } $select = self::select(); $select->where('type = ?', $type)->where('status =1'); if ($filter == 1 || $filter == 2) { $select->where('location_type = ?', $filter); } if ($order == 1) { $select->order('adult_dprice desc'); } elseif ($order == 2) { $select->order('adult_dprice asc'); } elseif ($order == 3) { $select->order('sales desc'); } elseif ($order == 4) { $select->order('sales asc'); } $adapter = new Zend_Paginator_Adapter_DbTableSelect($select); $paginator = new Zend_Paginator($adapter); $paginator->setItemCountPerPage(10)->setCurrentPageNumber($page); $data = $paginator->getCurrentItems(); $pages = $paginator->count(); $travels = array(); if (count($data) > 0) { foreach ($data as $da) { $travelModel = new Application_Model_O_Travel(); $travelModel->setId($da->id)->setType($da->type)->setLocation_type($da->location_type)->setAdult_oprice($da->adult_oprice)->setAdult_dprice($da->adult_dprice)->setChild_oprice($da->child_oprice)->setChild_dprice($da->child_dprice)->setArea($da->area)->setSales($da->sales)->setTitle($da->title)->setSubtitle($da->subtitle)->setImg($da->img)->setCtime($da->ctime)->setUtime($da->utime)->setStatus($da->status); array_push($travels, $travelModel); } } $res = array('travels' => $travels, 'pages' => $pages); return $res; }
public static function fetchAll($where = null, $order = null, $limit = null, $offset = null) { $resultSet = self::getDbTable()->fetchAll($where, $order, $limit, $offset); $entries = array(); foreach ($resultSet as $row) { $entry = new Application_Model_O_Travel(); $entry->setId($row->id)->setType($row->type)->setLocation_type($row->location_type)->setAdult_oprice($row->adult_oprice)->setAdult_dprice($row->adult_dprice)->setChild_oprice($row->child_oprice)->setChild_dprice($row->child_dprice)->setArea($row->area)->setSales($row->sales)->setTitle($row->title)->setSubtitle($row->subtitle)->setImg($row->img)->setCtime($row->ctime)->setUtime($row->utime)->setStatus($row->status); $entry->setNew(false); $entries[] = $entry; } return $entries; }
public function importAction() { $type = $this->_getParam('type', 1); $this->view->type = $type; $adapter = new Zend_File_Transfer_Adapter_Http(); $wrdir = Yy_Utils::getWriteDir(); $adapter->setDestination($wrdir); if (!$adapter->receive()) { $messages = $adapter->getMessages(); //echo implode("\n", $messages); } //echo APPLICATION_PATH;exit; $filename = $adapter->getFileName(); if (is_string($filename)) { //上传文件后的处理 require_once APPLICATION_PATH . '/../library/Yy/Excel/PHPExcel/IOFactory.php'; if (PHP_OS == 'WINNT') { $filename = iconv('UTF-8', 'gb2312', $filename); } $inputFileType = PHPExcel_IOFactory::identify($filename); if (stristr($inputFileType, 'excel') || stristr($inputFileType, 'csv')) { $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objPHPExcel = $objReader->load($filename); $sheetData = $objPHPExcel->getActiveSheet()->toArray(null, true, true, true); array_shift($sheetData); if (count($sheetData) > 0) { $travels = array(); foreach ($sheetData as $record) { $travel = new Application_Model_O_Travel(); $travel->setType($type); if ($record['A'] == '国内') { $ltype = 1; } elseif ($record['A'] == '国外') { $ltype = 2; } else { continue; } $travel->setLocation_type($ltype); $travel->setAdult_oprice($record['B'])->setAdult_dprice($record['C'])->setChild_oprice($record['D'])->setChild_dprice($record['E'])->setArea($record['F'])->setTitle($record['G'])->setSubtitle($record['H']); if ($record['I'] == '正常') { $status = 1; } elseif ($record['I'] == '禁用') { $status = 0; } else { continue; } $travel->setStatus($status); try { $travel->setCtime(date('Y-m-d H:i:s')); $travel->save(); array_push($travels, $travel); $this->view->travels = $travels; } catch (Zend_Db_Exception $e) { } } } } else { echo "<script type='text/javascript'>alert('请上传正确的文件类型')</script>"; } } }