| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <?php
- /**
- * @package merchant
- *
- * @author xaboy
- * @day 2020/5/29
- *
- *
- */
- namespace app\controller\merchant\user;
- use crmeb\basic\BaseController;
- use think\App;
- use think\facade\Db;
- class MerchantUser extends BaseController
- {
- /**
- * 商户锁定的用户列表
- */
- public function lst()
- {
- [$page, $limit] = $this->getPage();
- $where=['mer_id'=>$this->request->merId()];
- $account=$this->request->param('account', '');
- if($account){
- $where['account']=$account;
- }
- $data=Db::name('user')->where($where)->page($page,$limit)->select();
- if(!$data->isEmpty())
- $data=$data->toArray();
- return app('json')->success($data);
- }
- /*
- * 会员列表
- */
- public function member_lat()
- {
- $mer_id = $this->request->merId();
- [$page, $limit] = $this->getPage();
- $account=$this->request->params(['account']);
- if(!empty($account['account'])){
- $where=['u.account'=>$account['account']];
- }else{
- $where=[];
- }
- $all_num=Db::name('entropy_barter_user_'.$mer_id)->count('eb_id');
- $start_time=strtotime(date('Y-m-d'));
- $end_time=strtotime(date('Y-m-d'))+86400;
- $today_num=Db::name('entropy_barter_user_'.$mer_id)->where('ctime','between',[$start_time,$end_time])->count('eb_id');
- $merchant=Db::name('merchant')->where('mer_id',$mer_id)->find();
- if(!empty($merchant['merchant_type'])&&$merchant['merchant_type']==2){
- $member_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->where($where)
- ->page($page,$limit)
- ->field('ebu.eb_id,u.nickname,u.avatar,u.account,ebu.ctime,ebu.cumulative_money,u.uid,ebu.integral')
- ->select();
- if($member_data->isEmpty()){
- }else{
- $member_data=$member_data->toArray();
- foreach ($member_data as $k=>&$v){
- $v['ctime']=date('Y-m-d H:i:s',$v['ctime']);
- $v['tj_num']=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$v['eb_id'])->count('eb_id');
- }
- }
- }else{
- return app('json')->fail('没有权限访问该接口');
- }
- $return_data=[
- 'all_num'=>$all_num,
- 'today_num'=>$today_num,
- 'member_data'=>$member_data
- ];
- return app('json')->success($return_data);
- }
- public function member_recommend($uid)
- {
- $mer_id = $this->request->merId();
- [$page, $limit] = $this->getPage();
- $eb_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->leftJoin('user u','u.uid=ebu.uid')
- ->where('ebu.uid',$uid)
- ->field('u.nickname,u.avatar,u.account,ebu.*')
- ->find();
- $eb_data['ctime']=date('Y-m-d H:i:s',$eb_data['ctime']);
- if(!$eb_data){
- return app('json')->fail('未查到会员信息');
- }
- $top_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->where('eb_id',$eb_data['top_eb_id'])
- ->field('u.nickname,u.avatar,u.account')
- ->find();
- $recommend_one_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->where('ebu.top_eb_id',$eb_data['eb_id'])
- ->field('u.nickname,u.avatar,u.account,ebu.ctime')
- ->page($page,$limit)
- ->select()->toArray();
- foreach ($recommend_one_data as $k=>&$v){
- $v['ctime']=date('Y-m-d H:i:s',$v['ctime']);
- }
- $recommend_one_num=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->where('ebu.top_eb_id',$eb_data['eb_id'])
- ->count('ebu.eb_id');
- $recommend_one_id=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$eb_data['eb_id'])->column('eb_id');
- $recommend_one_id=implode(',',$recommend_one_id);
- $recommend_two_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->whereIn('ebu.top_eb_id',$recommend_one_id)
- ->field('u.nickname,u.avatar,u.account,ebu.ctime')
- ->page($page,$limit)
- ->select()->toArray();
- foreach ($recommend_two_data as $k=>&$v){
- $v['ctime']=date('Y-m-d H:i:s',$v['ctime']);
- }
- $recommend_two_num=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->rightJoin('user u','u.uid=ebu.uid')
- ->whereIn('ebu.top_eb_id',$recommend_one_id)
- ->count();
- $return_data=[
- 'top_data'=>$top_data,
- 'recommend_one_data'=>$recommend_one_data,
- 'recommend_one_num'=>$recommend_one_num,
- 'recommend_two_data'=>$recommend_two_data,
- 'recommend_two_num'=>$recommend_two_num,
- 'eb_data'=>$eb_data,
- ];
- return app('json')->success($return_data);
- }
- }
|