多条件多过滤展示结果列表该如何重写?
这个是后台展示订单的列表,基础需求是要求可以在搜索框根据user的相关信息进行搜索,比如user_id
,注册的email
,也可以在搜索框中根据order的相关信息进行搜索展示,比如order_id
,order_type
,下单的creat_time
范围等。
1、前期为了业务的快速上线,全部东西都是扔在controller里面的,多数是用if..else
来做搜索展示,当需求不断增加,比如增加了user_phone
,增加order_state
订单状态(关闭、进行中)等等的时候又得写if...else
,导致controller
的这个function
不断肥大。
2、不同的查询组别又有不同的查询权限,比如超级管理员能查询到全部用户,卖家只能查询到自己的买家的用户,所以user
又是不同。所以这段代码在不同的controller
里面不断地复制粘贴。
现在想重构,想把这个搜索功能独立成trait
或者是让controller
依赖的service
? 不知道该如何处理这些搜索的参数,和如果分离,请教一下各位是否有相关的文章,或者书籍、实例对类似的功能做了优化的
~~ 谢谢!
回复内容:
这个是后台展示订单的列表,基础需求是要求可以在搜索框根据user的相关信息进行搜索,比如user_id
,注册的email
,也可以在搜索框中根据order的相关信息进行搜索展示,比如order_id
,order_type
,下单的creat_time
范围等。
1、前期为了业务的快速上线,全部东西都是扔在controller里面的,多数是用if..else
来做搜索展示,当需求不断增加,比如增加了user_phone
,增加order_state
订单状态(关闭、进行中)等等的时候又得写if...else
,导致controller
的这个function
不断肥大。
2、不同的查询组别又有不同的查询权限,比如超级管理员能查询到全部用户,卖家只能查询到自己的买家的用户,所以user
又是不同。所以这段代码在不同的controller
里面不断地复制粘贴。
现在想重构,想把这个搜索功能独立成trait
或者是让controller
依赖的service
? 不知道该如何处理这些搜索的参数,和如果分离,请教一下各位是否有相关的文章,或者书籍、实例对类似的功能做了优化的
~~ 谢谢!