82 lines
2.7 KiB
PHP
82 lines
2.7 KiB
PHP
<?php
|
|
/**
|
|
* Created by PhpStorm.
|
|
* User: Administrator
|
|
* Date: 2020/4/23
|
|
* Time: 8:57
|
|
*/
|
|
|
|
namespace app\admin\model\costom;
|
|
|
|
|
|
use app\admin\service\ModelService;
|
|
|
|
class User extends ModelService
|
|
{
|
|
protected $table = 'users';
|
|
|
|
/**
|
|
* 获取用户列表信息
|
|
* @param int $page 当前页
|
|
* @param int $limit 每页显示数量
|
|
* @return array
|
|
* @throws \think\db\exception\DataNotFoundException
|
|
* @throws \think\db\exception\ModelNotFoundException
|
|
* @throws \think\exception\DbException
|
|
*/
|
|
public function userList($page = 1, $limit = 10, $search = []) {
|
|
$where = [];
|
|
//搜索条件
|
|
foreach ($search as $key => $value) {
|
|
if (!empty($value)) {
|
|
switch ($key) {
|
|
case 'add_time':
|
|
$value_list = explode(" - ", $value);
|
|
$value_list[0] = strtotime($value_list[0]);
|
|
$value_list[1] = strtotime($value_list[1]);
|
|
$where[] = [$key, 'BETWEEN', ["$value_list[0]", "$value_list[1]"]];
|
|
break;
|
|
case 'phone':
|
|
$where[] = [$key, '=', $value];
|
|
break;
|
|
case 'province':
|
|
$where[] = [$key, '=', $value];
|
|
break;
|
|
default:
|
|
!empty($value) && $where[] = [$key, 'LIKE', '%' . $value . '%'];
|
|
}
|
|
}
|
|
}
|
|
|
|
$count = self::where($where)->count();
|
|
$data = self::field('id,score,add_time,province,phone,wenli,mykemu')->where($where)->page($page, $limit)->order([ 'add_time' => 'desc'])->select();
|
|
empty($data) ? $msg = '暂无数据!' : $msg = '查询成功!';
|
|
//获取省份数组
|
|
$provinceArr = config('province.province');
|
|
foreach ($data as $key => $val){
|
|
$val['province'] = $provinceArr[$val['province']]['title'];
|
|
$val['add_time'] = date('Y-m-d H:i:s',$val['add_time']);
|
|
$val['wenli'] = config('setSub.subTypeName')[$val['wenli']];
|
|
if($val['mykemu']){
|
|
$val['mykemu'] = changeSubString($val['mykemu']);
|
|
}
|
|
|
|
$data[$key]['userInfo'] = $val['province']."_".$val['score']."_".$val['wenli']."_".$val['mykemu'];
|
|
}
|
|
|
|
|
|
$info = [
|
|
'limit' => $limit,
|
|
'page_current' => $page,
|
|
'page_sum' => ceil($count / $limit),
|
|
];
|
|
$list = [
|
|
'code' => 0,
|
|
'msg' => $msg,
|
|
'count' => $count,
|
|
'info' => $info,
|
|
'data' => $data,
|
|
];
|
|
return $list;
|
|
}
|
|
} |