美文网首页
列表接口的通用写法

列表接口的通用写法

作者: 凡心往事 | 来源:发表于2019-10-28 20:42 被阅读0次

列表类型的接口,因为客户端需要做分页,所以除了列表内容list之外,必须返回总数total。

同时,列表接口常常需要兼顾搜索的功能。

列表接口处理过程,可以分为:接收参数,参数校验,处理搜索参数,获取列表总数,获取列表内容(考虑缓存),返回json数据。

1、接口参数

offset 分页

limit  每页显示数量

keyword  搜索关键字,看业务实际需求,可以是一个或多个搜索参数

_checkParams()  参数校验

2、搜索处理 & 获取总数

getSearchParam() 方法用户处理需要搜索的参数

getCoupon()  方法用户获取列表的数量

3、简要代码如下

CouponController 中的代码:

public function  getCouponList() {

        $offset = $this->param['offset'];

        $limit = $this->param['limit'];

        // 参数校验略,调用  _checkParam();

        $searchParam = $this->getSearchParam();

        $total = D('Coupon')->getCount($searchParam);

        $couponList = D('Coupon')->getCouponList($searchParam, $offset, $limit);

        $result = [

                'errno' => 0,

                'message' => 'success',

                'result' => [

                        'total' => $total,

                        'coupon_list' => $couponList

                ]

        ];

        $this->ajaxReturn($result);

}

private function _checkParam() {}

protected function getSearchParam() {

        $searchParam = [];

        $couponName = $this->param['coupon_name'];

        $couponType = $this->param['coupon_type'];

        $couponName && $searchParam['coupon_name'] = ['LIKE' , '%' . $couponName . '%'];

        $couponType && $seachParam['coupon_type'] = $couponType;

        return $searchParam;

}

CouponModel 中的方法:

public function getCount($searchParam) {

        return $this->where($searchParam)->count();

}

public function getCouponList($searchParam, $offset = 0, $limit = 10) {

        return $this->where($searchParam)->limit($offset, $limit)->select();

}

相关文章

  • 列表接口的通用写法

    列表类型的接口,因为客户端需要做分页,所以除了列表内容list之外,必须返回总数total。 同时,列表接口常常需...

  • JAVA 泛型的好处

    场景 以列表接口为例,一般都是返回所需数据的集合以及分页信息。这通常都是一个模板类,所有列表接口都是通用的。 如果...

  • 8、全国世界城市列表API接口,免费好用

    1、前言 全国/世界城市列表接口,这个是RollToolsApi通用系列接口的其中一个,内部包含了3个小接口,能实...

  • Binary search

    通用写法

  • 查看模块中属性和方法

    简单的写法 列表推导式的写法 解析: 列表推导式的写法variable = [out_exp for out_ex...

  • markdown语法小计

    markdown语法学习 标题写法 引用的写法 测试引用展示效果 列表的写法 测试无序列表 测试有序列表 代码区块...

  • HTML5基础总结

    HTML5页面设计 DTD的写法 页面结构 超链接标签 的完整写法 有序列表和无序列表的写法无序列表 ...

  • Markdown Test

    标题 写法 效果 一号标题 二号标题 三号标题 列表 写法 效果 列表1 列表2 列表3 有序列表 有序列表 有序...

  • 技术实践丨如何解决异步接口请求快慢不均导致的数据错误问题?

    摘要:实时搜索都会面临一个通用的问题,就是浏览器请求后台接口都是异步的,如果先发起请求的接口后返回数据,列表/表格...

  • 通用 OCR API 接口

    通用 OCR API 接口 通用图像识别接口。 1. 产品功能 通用的识别接口, 支持多种图片格式; 支持中英文字...

网友评论

      本文标题:列表接口的通用写法

      本文链接:https://www.haomeiwen.com/subject/jlkivctx.html