* @version : HUOSDK-IDENTITY 1.0 */ namespace huoIdentify\logic; use huo\model\common\CommonModel; use huoIdentify\model\IdentifyPlatformLogModel; use huoIdentify\model\MemberModel; class IdentifyPlatformLogLogic extends CommonModel { protected $base_field = []; /** * 转换查询条件 * * @param array $param * * @return array */ public function getWhere($param = []) { $_map = []; if (!empty($param['mem_id'])) { $_map['mem_id'] = $param['mem_id']; } if (!empty($param['username'])) { $_mem_id = (new MemberModel())->getIdByUsername($param['username']); $_map['mem_id'] = empty($_mem_id) ? '-1' : $_mem_id; } if (!empty($param['real_name'])) { $_map['real_name'] = $param['real_name']; } if (!empty($param['app_id'])) { $_map['app_id'] = $param['app_id']; } if (!empty($param['mg_mem_id'])) { $_map['mg_mem_id'] = $param['mg_mem_id']; } if (!empty($param['id_card'])) { $_map['id_card'] = $param['id_card']; } if (!empty($param['identify_from'])) { $_map['identify_from'] = $param['identify_from']; } if (!empty($param['identify_pi'])) { $_map['identify_pi'] = $param['identify_pi']; } return $_map; } /** * 获取列表底层函数 * * @param array $where 搜索条件 * @param string $page 列表个数 * @param string $order 排序 * @param array $field 附加字段 * @param string $group 归类 * * @return array ['count'=>0,'list'=>[]] */ public function getList($where = [], $page = '1,10', $order = '-id', $field = [], $group = '') { $_map = $where; $_field = $field; $_model = new IdentifyPlatformLogModel(); $_count = $_model->where($_map)->count(); if (empty($_count)) { return [ 'count' => 0, 'list' => [] ]; } $_order = $this->orderFilter($order); $_datas = $_model->with('mem,game')->field($_field)->where($_map)->order($_order)->page($page)->select(); if (is_object($_datas)) { $_datas = $_datas->toArray(); } if (empty($_datas)) { return [ 'count' => 0, 'list' => [] ]; } return [ 'count' => $_count, 'list' => $_datas ]; } /** * 获取后台列表 * * @param array $where 搜索条件 * @param string $page 列表个数 * @param string $order 排序 * @param array $field 附加字段 * * @return array ['count'=>0,'list'=>[]] */ public function getAdminList($where = [], $page = '1,10', $order = '-id', $field = []) { $_map = $this->getWhere($where); $_field = $this->base_field; if (!empty($field)) { $_field = array_merge($_field, $field);/* 获取后台字段 */ } $_rdata = $this->getList($_map, $page, $order, $_field); if (empty($_rdata['list'])) { return $_rdata; } foreach ($_rdata['list'] as $_k => $_v) { $_mem_data = get_val($_v, 'mem', []); unset($_rdata['list']['mem']); $_rdata['list'][$_k]['username'] = get_val($_mem_data, 'username', ''); $_game_data = get_val($_v, 'game', []); unset($_rdata['list']['game']); $_rdata['list'][$_k]['game_name'] = get_val($_game_data, 'name', ''); $_rdata['list'][$_k]['classify_label'] = get_val($_game_data, 'classify_label', ''); $_rdata['list'][$_k]['classify'] = get_val($_game_data, 'classify', ''); } return $_rdata; } }