* @version : HUOSDK 8.0 */ namespace huo\model\member; use huo\model\common\CommonModel; class MemberExtModel extends CommonModel { protected $name = 'mem_ext'; /** * 添加玩家扩展 * * @param array $data * * @return bool|mixed */ public function addExt($data = []) { $_data['mem_id'] = get_val($data, 'mem_id', 0); $_data['last_login_time'] = get_val($data, 'last_login_time', time()); $_data['game_cnt'] = get_val($data, 'game_cnt', 0); $_data['sum_money'] = get_val($data, 'sum_money', 0); $_data['last_pay_time'] = get_val($data, 'last_pay_time', 0); $_data['last_money'] = get_val($data, 'last_money', 0); $_data['order_cnt'] = get_val($data, 'order_cnt', 0); $_data['order_suc_cnt'] = get_val($data, 'order_suc_cnt', 0); $_data['login_cnt'] = get_val($data, 'login_cnt', 0); $_data['last_login_ip'] = get_val($data, 'last_login_ip', ''); $_data['sign_days'] = get_val($data, 'sign_days', 0); $_data['last_sign_time'] = get_val($data, 'last_sign_time', 0); $_data['integral_total'] = get_val($data, 'integral_total', 0); $_data['integral_remain'] = get_val($data, 'integral_remain', 0); if ($_obj = self::create($_data, true)) { return $_obj->id; } else { return false; } } /** * 更新玩家扩展 * * @param array $ext_data * @param int $mem_id * * @return bool */ public function updateExt($ext_data, $mem_id) { $_map['mem_id'] = $mem_id; $_data = $ext_data; $_rs = self::update($_data, $_map, true); if (false == $_rs) { return false; } else { return true; } } /** * 获取玩家扩展信息 * * @param $mem_id * * @return array|false|\PDOStatement|string|\think\Model * @throws \think\Exception * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function getExt($mem_id) { $_map['mem_id'] = $mem_id; $_ext_data = $this->where($_map)->find(); if (is_object($_ext_data)) { $_ext_data = $_ext_data->toArray(); } return $_ext_data; } public function mem() { return $this->belongsTo('huo\model\member\MemberModel', 'mem_id'); } public function member() { return $this->belongsTo('huo\model\member\MemberModel', 'mem_id', 'id', [], 'left')->setEagerlyType(0); } /** * 充值排名 * * @param int $size * * @return false|\PDOStatement|string|\think\Collection * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function getChargeRank($size = 6) { return $this->field('mem_id, sum_money') ->order('sum_money', 'DESC') ->limit($size) ->with('mem') ->select(); } }