| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 | 
							- <?php
 
- /**
 
-  * MemberLogic.php UTF-8
 
-  * 玩家逻辑
 
-  *
 
-  * @date    : 2018/8/17 13:24
 
-  *
 
-  * @license 这不是一个自由软件,未经授权不许任何使用和传播。
 
-  * @author  : luowei <lw@huosdk.com>
 
-  * @version : HuoMP 1.0
 
-  */
 
- namespace huomp\logic\member;
 
- use huo\controller\common\CommonFunc;
 
- use huo\controller\member\MemCache;
 
- use huo\model\common\CommonModel;
 
- use huo\model\member\MemberModel;
 
- use huolib\constant\MemConst;
 
- class MemberLogic extends CommonModel {
 
-     protected function getWhere($param = []) {
 
-         $_map = [];
 
-         if (!empty($param['parent_mem_id'])) {
 
-             $_map['parent_mem_id'] = $param['parent_mem_id'];
 
-         }
 
-         return $_map;
 
-     }
 
-     public function getMemList($param = [], $page = '1,10') {
 
-         $_where = $this->getWhere($param);
 
-         $_where['status'] = MemConst::STATUS_NORMAL;
 
-         $_field = [
 
-             'id'       => 'id',
 
-             'nickname' => 'nickname',
 
-             'avatar'   => 'avatar',
 
-         ];
 
-         $_data_list = $this->getList($_field, $_where, $page);
 
-         $_today_cnt = (new MemberModel())->todayCount(['parent_mem_id' => $param['parent_mem_id']]);
 
-         $_today_cnt_arr = ['today_cnt' => $_today_cnt];
 
-         /* 获取邀请人信息 */
 
-         $_today_cnt_arr['parent'] = [];
 
-         $_mem_data = MemCache::ins()->getInfoById($param['parent_mem_id']);
 
-         if (!empty($_mem_data['parent_mem_id'])) {
 
-             $_pmem_data = MemCache::ins()->getInfoById($_mem_data['parent_mem_id']);
 
-             if (!empty($_pmem_data)) {
 
-                 $_today_cnt_arr['parent'] = [
 
-                     'id'       => $_pmem_data['id'],
 
-                     'nickname' => $_pmem_data['nickname'],
 
-                     'avatar'   => $_pmem_data['avatar'],
 
-                     'tag'      => '邀请人'
 
-                 ];
 
-             }
 
-         }
 
-         return array_merge($_data_list, $_today_cnt_arr);
 
-     }
 
-     public function getList($field = [], $where = [], $page = '1,10', $order = '-create_time') {
 
-         $_model = new MemberModel();
 
-         $_count = $_model->where($where)->count();
 
-         if (empty($_count)) {
 
-             return [
 
-                 'count' => $_count,
 
-                 'list'  => [],
 
-             ];
 
-         }
 
-         $_order = $_model->orderFilter($order);
 
-         $_mem_list = $_model->with('invited')
 
-                             ->field($field)
 
-                             ->where($where)
 
-                             ->order($_order)
 
-                             ->page($page)
 
-                             ->select();
 
-         if (is_object($_mem_list)) {
 
-             $_mem_list = $_mem_list->toArray();
 
-         }
 
-         if (empty($_mem_list)) {
 
-             return [
 
-                 'count' => $_count,
 
-                 'list'  => [],
 
-             ];
 
-         }
 
-         $_gold_rmb_rate = CommonFunc::getGoldRmbRate();
 
-         $_data = [];
 
-         foreach ($_mem_list as $key => $mem) {
 
-             $_amount = !empty($mem['invited']) ? $mem['invited']['amount'] : 0;
 
-             $_data[] = [
 
-                 'id'            => $mem['id'],
 
-                 'nickname'      => $mem['nickname'],
 
-                 'avatar'        => $mem['avatar'],
 
-                 'amount'        => $_amount,
 
-                 'gain_integral' => intval($_gold_rmb_rate * $_amount)
 
-             ];
 
-         }
 
-         return [
 
-             'count' => $_count,
 
-             'list'  => $_data,
 
-         ];
 
-     }
 
- }
 
 
  |