|
@@ -5,6 +5,7 @@ namespace app\api\controller;
|
|
|
use app\common\controller\UserApi;
|
|
|
use app\common\model\Area;
|
|
|
use app\common\model\Mobile;
|
|
|
+use think\db\Query;
|
|
|
|
|
|
/**
|
|
|
* 靓号管理
|
|
@@ -27,11 +28,35 @@ class MobileController extends UserApi
|
|
|
* @ApiParams (name="price_max",description="价格最高数字")
|
|
|
* @ApiParams (name="exclude_num",description="排除数字")
|
|
|
* @ApiParams (name="num_max",description="数字较多,传数字")
|
|
|
- * @ApiParams (name="rule_position",description="规律位置")
|
|
|
+ * @ApiParams (name="rule_position",description="规律位置,middle中间,tail尾部")
|
|
|
* @ApiParams (name="rule_name",description="规律名,设计图字母变小写传过来")
|
|
|
* @ApiParams (name="limit",description="limit")
|
|
|
* @ApiParams (name="page",description="page")
|
|
|
* @ApiReturnParams (name=id,description=id)
|
|
|
+ * @ApiReturnParams (name=logo,description=缩略图)
|
|
|
+ * @ApiReturnParams (name=name,description=号码名称)
|
|
|
+ * @ApiReturnParams (name=no,description=手机号)
|
|
|
+ * @ApiReturnParams (name=type,description=1靓号2流量卡)
|
|
|
+ * @ApiReturnParams (name=network,description=运营商)
|
|
|
+ * @ApiReturnParams (name=city,description=城市)
|
|
|
+ * @ApiReturnParams (name=privince,description=省份)
|
|
|
+ * @ApiReturnParams (name=amount,description=售价)
|
|
|
+ * @ApiReturnParams (name=amount_original,description=原价)
|
|
|
+ * @ApiReturnParams (name=amount_exists,description=含话费)
|
|
|
+ * @ApiReturnParams (name=amount_base,description=售价)
|
|
|
+ * @ApiReturnParams (name=amount_charge,description=预充)
|
|
|
+ * @ApiReturnParams (name=summary,description=简介)
|
|
|
+ * @ApiReturnParams (name=saled,description=是否已出售)
|
|
|
+ * @ApiReturnParams (name=is_activity,description=是否特价号)
|
|
|
+ * @ApiReturnParams (name=activity_time_end,description=特价过期时间null永不过期)
|
|
|
+ * @ApiReturnParams (name="info.free_app",description=免流APP列表)
|
|
|
+ * @ApiReturnParams (name="info.describe",description="套餐说明|资费详情")
|
|
|
+ * @ApiReturnParams (name="info.content",description="详细内容|注意事项")
|
|
|
+ * @ApiReturnParams (name="info.flow_year",description="每年流量(G)")
|
|
|
+ * @ApiReturnParams (name="info.fee",description="资费")
|
|
|
+ * @ApiReturnParams (name="info.fee_unit",description="资费单位月还是年")
|
|
|
+ * @ApiReturnParams (name="info.first_month_free",description="首月是否免月租")
|
|
|
+ * @ApiReturnParams (name="info.discount_title",description="简要优惠介绍")
|
|
|
*/
|
|
|
public function list(){
|
|
|
$model=Mobile::show();
|
|
@@ -39,6 +64,7 @@ class MobileController extends UserApi
|
|
|
$this->validate($data,[
|
|
|
'keyword'=>['max:11'],
|
|
|
'num_max'=>['integer','between:0,9'],
|
|
|
+ 'rule_position'=>['in:middle,tail'],
|
|
|
]);
|
|
|
if(!empty($data['search_type']) && !empty($data['keyword'])){
|
|
|
if($data['search_type']=='fuzzy'){
|
|
@@ -88,7 +114,35 @@ class MobileController extends UserApi
|
|
|
if(!empty($data['num_max'])){
|
|
|
$model->where("filter_num_{$data['num_max']}",'>',3);
|
|
|
}
|
|
|
-dd($model->buildSql());
|
|
|
+ $rules=[
|
|
|
+ 'aaa'=>['middle'=>'filter_middle_3a','tail'=>'filter_tail_3a'],
|
|
|
+ 'aaaa'=>['middle'=>'filter_middle_4a','tail'=>'filter_tail_4a'],
|
|
|
+ 'aaaaa'=>['middle'=>'filter_middle_5a','tail'=>'filter_tail_5a'],
|
|
|
+ '6a'=>['middle'=>'filter_middle_6a','tail'=>'filter_tail_6a'],
|
|
|
+ '7a'=>['middle'=>'filter_middle_7a','tail'=>'filter_tail_7a'],
|
|
|
+ '8a'=>['middle'=>'filter_middle_8a','tail'=>'filter_tail_8a'],
|
|
|
+ 'abc'=>['middle'=>'filter_middle_abc','tail'=>'filter_tail_abc'],
|
|
|
+ 'abcd'=>['middle'=>'filter_middle_abcd','tail'=>'filter_tail_abcd'],
|
|
|
+ 'abcde'=>['middle'=>'filter_middle_abcde','tail'=>'filter_tail_abcde'],
|
|
|
+ 'abcdef'=>['middle'=>'filter_middle_abcdef','tail'=>'filter_tail_abcdef'],
|
|
|
+ 'aaab'=>['middle'=>'filter_middle_3ab','tail'=>'filter_tail_3ab'],
|
|
|
+ 'aaaab'=>['middle'=>'filter_middle_4ab','tail'=>'filter_tail_4ab'],
|
|
|
+ 'aaaaab'=>['middle'=>'filter_middle_5ab','tail'=>'filter_tail_5ab'],
|
|
|
+ ];
|
|
|
+ if(!empty($data['rule_name'])){
|
|
|
+ if (!isset($rules[$data['rule_name']])) {
|
|
|
+ $this->error('规律规则有误');
|
|
|
+ }
|
|
|
+ $rule=$rules[$data['rule_name']];
|
|
|
+ if(!empty($data['rule_position'])) {
|
|
|
+ $model->where($rule[$data['rule_position']], 1);
|
|
|
+ }else{
|
|
|
+ $model->where(function (Query $query)use ($rule){
|
|
|
+ $query->where($rule['middle'],1)->whereOr($rule['tail'],1);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+//dd($model->buildSql());
|
|
|
$list=$model->paginate(input('limit',15));
|
|
|
$this->success('',$list);
|
|
|
}
|