Exemplo n.º 1
0
 public function ListType($f3)
 {
     // 检查缓存
     $cacheKey = md5(__FILE__ . '\\' . __METHOD__);
     $goodsTypeArray = $f3->get($cacheKey);
     if (!empty($goodsTypeArray)) {
         goto out;
     }
     $goodsTypeService = new GoodsTypeService();
     $goodsTypeArray = $goodsTypeService->fetchGoodsTypeArray(array(), 0, 0);
     $f3->set($cacheKey, $goodsTypeArray, 300);
     //缓存 5 分钟
     out:
     $f3->expire(60);
     // 客户端缓存 1 分钟
     Ajax::header();
     echo Ajax::buildResult(null, null, $goodsTypeArray);
 }
Exemplo n.º 2
0
 public function ListType($f3)
 {
     // 权限检查
     $this->requirePrivilege('manage_goods_type_listtype');
     global $smarty;
     // 参数验证
     $validator = new Validator($f3->get('GET'));
     $pageNo = $validator->digits()->min(0)->validate('pageNo');
     $pageSize = $validator->digits()->min(0)->validate('pageSize');
     // 查询条件
     $formQuery = array();
     $formQuery['meta_name'] = $validator->validate('meta_name');
     $formQuery['meta_desc'] = $validator->validate('meta_desc');
     if (!$this->validate($validator)) {
         goto out_display;
     }
     // 设置缺省值
     $pageNo = isset($pageNo) && $pageNo > 0 ? $pageNo : 0;
     $pageSize = isset($pageSize) && $pageSize > 0 ? $pageSize : 20;
     // 查询条件
     $condArray = QueryBuilder::buildQueryCondArray($formQuery);
     $goodsTypeService = new GoodsTypeService();
     $totalCount = $goodsTypeService->countGoodsTypeArray($condArray);
     if ($totalCount <= 0) {
         // 没数据,可以直接退出了
         goto out_display;
     }
     // 页数超过最大值,返回第一页
     if ($pageNo * $pageSize >= $totalCount) {
         RouteHelper::reRoute($this, '/Goods/Type/ListType');
     }
     // 查询数据
     $goodsTypeArray = $goodsTypeService->fetchGoodsTypeArray($condArray, $pageNo * $pageSize, $pageSize);
     // 给模板赋值
     $smarty->assign('totalCount', $totalCount);
     $smarty->assign('pageNo', $pageNo);
     $smarty->assign('pageSize', $pageSize);
     $smarty->assign('goodsTypeArray', $goodsTypeArray);
     out_display:
     $smarty->display('goods_type_listtype.tpl');
 }