123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- <?php
- namespace app\api\controller\qiyu;
- use app\common\controller\Api;
- use app\common\model\QiyuToken;
- use Carbon\Carbon;
- use think\Cache;
- /**
- * 七鱼接口
- */
- class User extends Api
- {
- protected $noNeedLogin='*';
- /**
- * 获取token
- * @param string appid
- * @param string appsecret
- */
- public function get_token(){
- $config=config('qiyu');
- $data=$this->_validate([
- 'appid'=>['require'],
- 'appsecret'=>['require'],
- ]);
- if($data['appid']!=$config['appid']){
- $this->error('appid有误');
- }
- if($data['appsecret']!=$config['appSecret']){
- $this->error('appsecret有误');
- }
- $expire=$config['expire']??7200;
- $token=QiyuToken::getToken();
- $this->success('',[
- 'token'=>$token,
- 'expires'=>$expire,
- ]);
- }
- /**
- * 获取用户信息
- * @param string userid
- */
- public function info(){
- $data=$this->_validate([
- 'userid'=>['require']
- ]);
- $this->checkToken();
- $user=\app\common\model\User::where('username',$data['userid'])->find();
- if(!$user){
- $this->error('用户不存在');
- }
- $this->success('',[
- 'uid'=>$data['userid'],
- 'data'=>[
- ['index'=>0,'key'=>'account','label'=>'用户名','value'=>$user->getShowName()],
- ['index'=>1,'key'=>'name','label'=>'昵称','value'=>$user['nickname']],
- ['index'=>2,'key'=>'mobile','label'=>'手机号','value'=>$user['mobile']],
- ['index'=>3,'key'=>'email','label'=>'邮箱','value'=>$user['email']],
- ['index'=>4,'key'=>'level','label'=>'等级','value'=>$user->level_text],
- ['index'=>5,'key'=>'createtime','label'=>'注册时间','value'=>Carbon::createFromTimestamp($user->createtime)->toDateTimeString()],
- ['index'=>6,'key'=>'live_addr','label'=>'居住地','value'=>$user->live_addr],
- ['index'=>7,'key'=>'com_name','label'=>'公司名称','value'=>$user->com_name],
- ['index'=>8,'key'=>'wx_account','label'=>'微信号','value'=>$user->wx_account?:'-'],
- ]
- ]);
- }
- public function order(){
- $data=$this->_validate([
- 'userid'=>['require']
- ]);
- $this->checkToken();
- $from=input('from',0);
- $limit=input('count',10);
- $user=\app\common\model\User::where('username',$data['userid'])->find();
- if(!$user){
- $this->error('用户不存在');
- }
- $orders=$user->orders()->order('id','desc')->limit($from,$limit)->select();
- $info=[
- 'count'=>$orders->count(),
- 'orders'=>[],
- ];
- foreach ($orders as $idx=>$order){
- $item=[
- 'index'=>$idx,
- 'blocks'=>[],
- ];
- $item['blocks'][]=[
- 'index'=>0,
- 'is_title'=>true,
- 'data'=>[
- ['index'=>0,'key'=>'order_no','label'=>'订单号','value'=>$order->order_no,],
- ]
- ];
- foreach ($order->info as $orderInfoIdx=>$orderInfo){
- $item['blocks'][]=[
- 'index'=>$orderInfoIdx+1,
- 'data'=>[
- ['index'=>0,'key'=>'goods_name','label'=>'商品名称','value'=>$orderInfo->goods_name],
- ['index'=>1,'key'=>'sku_name','label'=>'商品规格','value'=>$orderInfo->sku_name],
- ['index'=>2,'key'=>'amount_pay','label'=>'金额','value'=>$orderInfo->amount_pay],
- ['index'=>3,'key'=>'num','label'=>'数量','value'=>$orderInfo->num],
- ['index'=>4,'key'=>'num_install','label'=>'安装数量','value'=>$orderInfo->num_install],
- ]
- ];
- }
- $info['orders'][]=$item;
- }
- $this->success('',$info);
- }
- protected function checkToken(){
- $token=$this->request->post('token');
- if(!QiyuToken::exists($token)){
- $this->error('token expired');
- }
- }
- protected function success($msg = '', $data = [], $code = 1, $type = null, array $header = [])
- {
- $info=[
- 'rlt'=>$code?0:1,
- 'msg'=>$msg,
- ];
- $info=array_merge($info,$data);
- json($info)->send();
- exit;
- }
- protected function error($msg = '', $data = [], $code = 0, $type = null, array $header = [])
- {
- $this->success($msg,$data,0);
- }
- }
|