protected function _list($model, $map, $sortBy = '', $asc = false) { //排序字段 默认为主键名 if (isset($_REQUEST['_order'])) { $order = $_REQUEST['_order']; } else { if (!empty($sortBy)) { $order = $sortBy; } else { if (in_array('sort', get_model_fields($model))) { $order = 'sort'; $asc = true; } else { $order = $model->getPk(); } } } //排序方式默认按照倒序排列 //接受 sost参数 0 表示倒序 非0都 表示正序 if (isset($_REQUEST['_sort'])) { $sort = $_REQUEST['_sort'] ? 'asc' : 'desc'; } else { if (strpos($sortBy, ',')) { $sort = ''; } else { $sort = $asc ? 'asc' : 'desc'; } } //取得满足条件的记录数 $count_model = clone $model; //取得满足条件的记录数 if (!empty($count_model->pk)) { $count = $count_model->where($map)->count($model->pk); } else { $count = $count_model->where($map)->count(); } if ($count > 0) { import("@.ORG.Util.Page"); //创建分页对象 if (!empty($_REQUEST['list_rows'])) { $listRows = $_REQUEST['list_rows']; } else { $listRows = get_user_config('list_rows'); } $p = new Page($count, $listRows); //分页查询数据 if ($sort) { $voList = $model->where($map)->order("`" . $order . "` " . $sort)->limit($p->firstRow . ',' . $p->listRows)->select(); } else { $voList = $model->where($map)->order($order)->limit($p->firstRow . ',' . $p->listRows)->select(); } //echo $model->getlastSql(); $p->parameter = $this->_search(); //分页显示 $page = $p->show(); //列表排序显示 $sortImg = $sort; //排序图标 $sortAlt = $sort == 'desc' ? '升序排列' : '倒序排列'; //排序提示 $sort = $sort == 'desc' ? 1 : 0; //排序方式 //模板赋值显示 $name = $this->getActionName(); $this->assign('list', $voList); $this->assign('sort', $sort); $this->assign('order', $order); $this->assign('sortImg', $sortImg); $this->assign('sortType', $sortAlt); $this->assign("page", $page); } return; }
protected function _list($model, $map, $sortBy = '', $asc = false, $extend_attr = '') { //排序字段 默认为主键名 if (isset($_REQUEST['_order'])) { $order = $_REQUEST['_order']; } else { if (!empty($sortBy)) { $order = $sortBy; } else { if (in_array('sort', get_model_fields($model))) { $order = 'sort'; $asc = true; } else { $order = $model->getPk(); } } } //排序方式默认按照倒序排列 //接受 sost参数 0 表示倒序 非0都 表示正序 if (isset($_REQUEST['_sort'])) { $sort = $_REQUEST['_sort'] ? 'asc' : 'desc'; } else { $sort = $asc ? 'asc' : 'desc'; } //取得满足条件的记录数 $count_model = clone $model; //取得满足条件的记录数 // dump($map);die; if (!empty($count_model->pk)) { $count = $count_model->where($map)->count($model->pk); } else { $count = $count_model->where($map)->count(); } if ($count > 0) { import("@.ORG.Util.Page"); //创建分页对象 if (!empty($_REQUEST['list_rows'])) { $listRows = $_REQUEST['list_rows']; } else { $listRows = get_user_config('list_rows'); } $p = new Page($count, $listRows); //分页查询数据 $voList = $model->where($map)->order("`" . $order . "` " . $sort)->limit($p->firstRow . ',' . $p->listRows)->select(); if ($extend_attr != '') { foreach ($extend_attr as $item) { foreach ($voList as $key => $value) { // var_dump($this->extend_process($item['param'],$value)); $voList[$key][$item['attr']] = $this->extend_process($item['param'], $value); } } } $p->parameter = $this->_search(); //分页显示 $page = $p->show(); //列表排序显示 $sortImg = $sort; //排序图标 $sortAlt = $sort == 'desc' ? '升序排列' : '倒序排列'; //排序提示 $sort = $sort == 'desc' ? 1 : 0; //排序方式 //模板赋值显示 $name = $this->getActionName(); if ($name == "DutyRecord") { for ($i = 0; $i < count($voList); $i++) { if ($voList[$i]["add_file"]) { $file_arr = explode(';', $voList[$i]["add_file"]); for ($j = 0; $j < count($file_arr) - 1; $j++) { $file_model = D("File"); $where['sid'] = $file_arr[$j]; $file_msg = $file_model->where($where)->select(); $voList[$i]["pic"][] = $file_msg[0]['savename']; } } } } //var_dump($voList); $this->assign('list', $voList); $this->assign('sort', $sort); $this->assign('order', $order); $this->assign('sortImg', $sortImg); $this->assign('sortType', $sortAlt); $this->assign("page", $page); } return; }
protected function _list($model, $map, $sort = '') { //排序字段 默认为主键名 if (isset($_REQUEST['_sort'])) { $sort = $_REQUEST['_sort']; } else { if (in_array('sort', get_model_fields($model))) { $sort = "sort asc"; } else { if (empty($sort)) { $sort = "id desc"; } } } //取得满足条件的记录数 $count_model = clone $model; //取得满足条件的记录数 $count = $count_model->where($map)->count(); if ($count > 0) { //创建分页对象 if (!empty($_REQUEST['list_rows'])) { $list_rows = $_REQUEST['list_rows']; } else { $list_rows = get_user_config('list_rows'); } import("@.ORG.Util.Page"); $p = new \Page($count, $list_rows); //分页查询数据 $vo_list = $model->where($map)->order($sort)->limit($p->firstRow . ',' . $p->listRows)->select(); //echo $model->getlastSql(); $p->parameter = $this->_search($model); //分页显示 $page = $p->show(); if ($vo_list) { $this->assign('list', $vo_list); $this->assign('sort', $sort); $this->assign("page", $page); return $vo_list; } } return FALSE; }