user_id); return JsonServer::success('', $config); } /** * 用户信息 */ public function info() { return JsonServer::success('', UserLogic::getUserInfo($this->user_id)); } /** * Notes:设置用户信息 */ public function setInfo() { try{ $post = $this->request->post(); $post['user_id'] = $this->user_id; validate(UpdateUserValidate::class)->scene('set')->check($post); }catch(ValidateException $e) { return JsonServer::error($e->getError()); } $result = UserLogic::setUserInfo($post); if($result === true) { return JsonServer::success('设置成功'); } return JsonServer::error(UserLogic::getError()); } /** * 财户流水 */ public function accountLog(){ // 来源类型 1-余额 2-积分 3-成长值 $source = $this->request->get('source', ''); if(empty($source)) { return JsonServer::error('请传入来源类型'); } // 变动类型 $type = $this->request->get('type'); $data = UserLogic::accountLog($this->user_id, $source,$type, $this->page_no, $this->page_size); return JsonServer::success('', $data); } /*** * 会员中心 - 会员等级 */ public function getUserLevelInfo() { $data = UserLogic::getUserLevelInfo($this->user_id); return JsonServer::success('', $data); } /** * 成长值记录 */ public function getGrowthList() { $get = $this->request->get(); $get['page_no'] = $this->page_no; $get['page_size'] = $this->page_size; $get['user_id'] = $this->user_id; $data = UserLogic::getGrowthList($get); return JsonServer::success('', $data); } /** * 我的钱包 */ public function myWallet(){ $result = UserLogic::myWallet($this->user_id); if($result === false) { return JsonServer::error(UserLogic::getError()); } return JsonServer::success('获取成功', $result); } /** * Notes: 更新微信的用户信息 */ public function setWechatInfo() { $data = $this->request->post(); try{ validate(SetWechatUserValidate::class)->check($data); }catch(ValidateException $e) { return JsonServer::error($e->getError()); } $result = UserLogic::updateWechatInfo($this->user_id, $data); if($result === true) { return JsonServer::success('更新成功'); } return JsonServer::error(UserLogic::getError()); } //获取微信手机号 public function getMobile() { try{ $post = $this->request->post(); $post['user_id'] = $this->user_id; validate(WechatMobileValidate::class)->check($post); }catch(ValidateException $e) { return JsonServer::error($e->getError()); } $result = UserLogic::getMobileByMnp($post); if($result === false) { return JsonServer::error(UserLogic::getError()); } return JsonServer::success('操作成功', [],1,1); } /** * Notes: 更换手机号 / 绑定手机号 * @author 段誉(2021/6/23) * @return \think\response\Json */ public function changeMobile() { $data = $this->request->post(); $data['client'] = $this->client; $data['user_id'] = $this->user_id; if(isset($data['action']) && 'change' == $data['action']) { //变更手机号码 $data['message_key'] = NoticeEnum::CHANGE_MOBILE_NOTICE; (new ChangeMobileValidate())->goCheck('', $data); } else { //绑定手机号码 $data['message_key'] = NoticeEnum::BIND_MOBILE_NOTICE; (new ChangeMobileValidate())->goCheck('binding', $data); } $result = UserLogic::changeMobile($this->user_id, $data); if(false === $result) { return JsonServer::error(UserLogic::getError()); } if(is_object($result)){ $result = $result->toArray(); } return JsonServer::success('操作成功',$result); } //我的粉丝 public function fans() { $get = $this->request->get(); $page = $this->request->get('page_no', $this->page_no); $size = $this->request->get('page_size', $this->page_size); return JsonServer::success('', UserLogic::fans($this->user_id, $get, $page, $size)); } //我的推荐店铺 public function shops() { $get = $this->request->get(); $page = $this->request->get('page_no', $this->page_no); $size = $this->request->get('page_size', $this->page_size); $user_id = $this->user_id; $where[] = ['u.reference_user_id', '=', $user_id]; if (isset($get['keyword']) && $get['keyword'] != ''){ $where[] = ['u.name','like','%'.$get['keyword'].'%']; } //查询条件 $field = 'u.logo as avatar,u.name as nickname, u.mobile, u.create_time, d.order_num as fans_order, d.order_amount as fans_money, d.fans as fans_team'; $count = \app\common\model\shop\Shop::alias('u') ->field($field) ->leftJoin('user_shop_distribution d', 'd.shop_id = u.id') ->where($where) ->count(); $lists = \app\common\model\shop\Shop::alias('u') ->field($field) ->leftJoin('user_shop_distribution d', 'd.shop_id = u.id') ->where($where) ->page($page, $size) ->select(); foreach ($lists as &$item) { $item['avatar'] = UrlServer::getFileUrl($item['avatar']); $item['fans_team'] = $item['fans_team'] ?? 0; $item['fans_order'] = $item['fans_order'] ?? 0; $item['fans_money'] = $item['fans_money'] ?? 0; unset($item['fans'], $item['distribution_order_num'], $item['distribution_money']); } $data = [ 'list' => $lists, 'page' => $page, 'size' => $size, 'count' => $count, 'more' => is_more($count, $page, $size) ]; return JsonServer::success('', $data); } public function newShops() { $page = $this->request->get('page_no', $this->page_no); $size = $this->request->get('page_size', $this->page_size); $type = $this->request->get('type'); $user_id = $this->user_id; $p = $page*$size; //查询条件 if($type == 1){ $sql = "SELECT * FROM ls_user a,ls_shop_apply b WHERE a.id = b.user_id and a.first_leader = '.$user_id.' and a.disable = 0 and a.del = 0 and b.del=0 and b.audit_status = 2 limit ".$p.",".$size; $lists = Db::query($sql); // $sql = "SELECT count(*) as cont FROM ls_user a,ls_shop_apply b WHERE a.id = b.user_id and // a.first_leader = '.$user_id.' and a.disable = 0 and a.del = 0 and b.del=0 // and b.audit_status = 2 group by a.first_leader"; $count = Db::name("shop_apply") ->alias("a") ->join("user","a.user_id = b.id","left") ->where("a.first_leader",$user_id) ->where("a.disable",0) ->where("a.del",0) ->where("b.del",0) ->where("b.audit_status",2) ->count(); // $count = Db::query($sql); // $count = $count[0]['cont']; }else{ $sql = "SELECT * FROM ls_user a,ls_local_store b WHERE a.id = b.user_id and a.first_leader = '.$user_id.' and a.disable = 0 and a.del = 0 and b.is_delete=0 and b.store_state = 1 limit ".$p.",".$size; $lists = Db::query($sql); // $sql = "SELECT count(*) as cont FROM ls_user a,ls_local_store b WHERE a.id = b.user_id and // a.first_leader = '.$user_id.' and a.disable = 0 and a.del = 0 and b.is_delete=0 // and b.store_state = 1 group by a.first_leader"; // $count = Db::query($sql); // $count = $count[0]['cont']; $count = Db::name("local_store") ->alias("a") ->join("user","a.user_id = b.id","left") ->where("a.first_leader",$user_id) ->where("a.disable",0) ->where("a.del",0) ->where("b.is_delete",0) ->where("b.store_state",1) ->count(); } $data = [ 'list' => $lists, 'page' => $page, 'size' => $size, 'count' => $count, 'more' => is_more($count, $page, $size) ]; return JsonServer::success('', $data); } /** * @notes 用户聊天记录 * @return \think\response\Json * @author 段誉 * @date 2021/12/20 11:29 */ public function chatRecord() { $shop_id = $this->request->get('shop_id/d', 0); $result = UserLogic::getChatRecord($this->user_id, $shop_id, $this->page_no, $this->page_size); return JsonServer::success('', $result); } }