public function oneAction()
 {
     $query = Criteria::fromInput($this->di, "City", array_merge($_GET, $_POST));
     $this->persistent->parameters = $query->getParams();
     $parameters = $this->persistent->parameters;
     if (!is_array($parameters)) {
         $parameters = array();
     }
     $data = \City::findFirst($parameters)->toArray(true);
     $this->view->disable();
     $this->response->setContentType('application/json', 'UTF-8');
     echo json_encode($data);
 }
Exemplo n.º 2
0
 public function hosreserveAction()
 {
     //默认在路由中传参数要写成 ?名=值&名=值...然后用request接;另一种就是写成 /值/值/...的形式,这种就不能写名字,而且最好实在路由里面自定义一下,是依次赋给action括号里的参数
     $cityid = $this->request->get('cityid', 'int');
     $pagenumber = $this->request->get('pagenumber', 'int');
     if ($cityid == null) {
         $cityid = 0;
     }
     if ($pagenumber == null) {
         $pagenumber = 1;
     }
     //若session中没有province,默认是北京
     if (!$this->session->has('province')) {
         $this->session->set('province', '北京');
         $this->cookies->set('province', '北京', time() + 15 * 86400);
     }
     $province = $this->session->get('province');
     $this->tag->appendTitle($province);
     $qcities = City::find(array('conditions' => 'province=?1', 'bind' => array(1 => $province)));
     $allhospitals = array();
     $k = 0;
     if ($cityid == 0) {
         $city = '全部地区';
         foreach ($qcities as $item1) {
             foreach ($item1->Hospital as $item2) {
                 $k++;
                 $allhospitals[$k] = $item2;
             }
         }
     } else {
         $qcity = City::findFirst(array('conditions' => 'id=?1', 'bind' => array(1 => $cityid)));
         $city = $qcity->name;
         foreach ($qcity->Hospital as $item) {
             $k++;
             $allhospitals[$k] = $item;
         }
     }
     $hospitals = array();
     for ($i = 10 * ($pagenumber - 1) + 1; $i <= $pagenumber * 10 && $i <= $k; $i++) {
         $hospitals[$i] = $allhospitals[$i];
     }
     $this->view->setVars(array('province' => $province, 'city' => $city, 'cityid' => $cityid, 'provinces' => $this->session->get('allprovinces'), 'cities' => $qcities, 'hospitals' => $hospitals, 'pagenumber' => $pagenumber, 'pagecount' => (int) ($k / 10)));
 }
Exemplo n.º 3
0
 public function cityAction()
 {
     $this->view->disable();
     $cityid = (int) $this->request->get('cityid', 'string');
     $this->response->setContentType('application/Json', 'UTF-8');
     $hospitals = array();
     if ($cityid == 0) {
         $qcity = City::find(array('conditions' => "province=?1", 'bind' => array(1 => $this->session->get('province'))));
         foreach ($qcity as $item1) {
             foreach ($item1->Hospital as $item2) {
                 $hospitals[$item2->id] = $item2->name;
             }
         }
     } else {
         $qcity = City::findFirst(array('conditions' => 'id=?1', 'bind' => array(1 => $cityid)));
         foreach ($qcity->Hospital as $item) {
             $hospitals[$item->id] = $item->name;
         }
     }
     $this->zhSort($hospitals);
     $this->response->setJsonContent(array('hospital' => $hospitals));
     $this->response->send();
 }