view->config = Zend_Registry::get('config'); $this->db=Zend_Registry::get('db'); $this->view->nav = array( array('link'=>'/','title'=>''), array('link'=>'/data','title'=>$this->view->config->title->data), ); if(view::User() === false) { view::Post($this,"请先登陆",'/account/login?href='.urlencode($_SERVER['REQUEST_URI'])); } $this->uid = view::User('id'); } function indexAction() { $record_type = $this->_getParam("dataset"); if(empty($record_type)) return true; $sc = Factory::Bootstrap($record_type); } //******************************************************** /* * dataAction() ajax获取数据 * * param string $ac //请求的数据类型 * param string $dt //请求的数据来源(气象,水文) * * return view */ function dataAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->layout->disableLayout(); $uuid = $this->_getParam("uuid"); $record_subset = $this->_getParam("subdataset"); $record = new Visual\Record($uuid,$record_subset); //$record = Visual\Factory::Bootstrap($record_type); if(!empty($record_subset)) { $record->subset = $record_subset; } $data = $record(); $this->jsonexit($data); return true; }//dataAction() Ajax获取数据 //viewAction public function viewAction() { $uuid = $this->_getParam('uuid'); if(empty($uuid) || \Helpers\Uuid::test($uuid) == false) { view::Post($this,"参数错误",-1); return; } $visual = new Visual\Visual; $this->view->data = $visual->getVisualVars($uuid); if ($this->view->data['chartjs']=='highcharts') $this->_helper->viewRenderer('view-highcharts'); if(empty($this->view->data)) { view::Post($this,"此数据不支持可视化",-1); return; } $metadata = new Metadata\Metadata; $this->view->info = $metadata->view($uuid); } /* * jsonexit() 退出并返回json数据 * * param array $data 要返回的JSON数据,可以是任意数组 * * return application/JSON */ public function jsonexit($data){ $this->getResponse()->setHeader('Content-Type', 'application/json')->appendBody(json_encode($data,JSON_NUMERIC_CHECK)); return true; }//jsonexit() 退出并返回json数据 }