{ | { | ||||
/** @var BaseAuth $services */ | /** @var BaseAuth $services */ | ||||
$services = app()->make(BaseAuth::class); | $services = app()->make(BaseAuth::class); | ||||
$adminInfo = $services->parseToken($token, function ($id) { | |||||
return $this->dao->get($id); | |||||
}); | |||||
[$id, $type] = $services->parseToken($token); | |||||
$adminInfo = $this->dao->get($id); | |||||
return $adminInfo->hidden(['password', 'ip', 'status']); | return $adminInfo->hidden(['password', 'ip', 'status']); | ||||
} | } | ||||
$menus = array_merge($menus, $list); | $menus = array_merge($menus, $list); | ||||
$data2 = []; | $data2 = []; | ||||
foreach ($menus as $k => $v) { | foreach ($menus as $k => $v) { | ||||
$cx = $v['value']; | |||||
if (!isset($data2[$cx])) { | |||||
$data2[$cx] = $v; | |||||
if (isset($v['value'])) { | |||||
$cx = $v['value']; | |||||
if (!isset($data2[$cx])) { | |||||
$data2[$cx] = $v; | |||||
} | |||||
} | } | ||||
} | } | ||||
$data2 = array_values($data2); | $data2 = array_values($data2); |
// if (!isset($v['children'])) { | // if (!isset($v['children'])) { | ||||
// unset($data[$k]); | // unset($data[$k]); | ||||
// } | // } | ||||
$cx = $v['value']; | |||||
if (isset($data2[$cx])) { | |||||
} else { | |||||
$data2[$cx] = $v; | |||||
if (isset($v['value'])) { | |||||
$cx = $v['value']; | |||||
if (!isset($data2[$cx])) { | |||||
$data2[$cx] = $v; | |||||
} | |||||
} | } | ||||
} | } | ||||
$data2 = array_values($data2); | $data2 = array_values($data2); |
$list = $this->getProduceOtherList($list, $uid, isset($where['type']) && !!$where['type']); | $list = $this->getProduceOtherList($list, $uid, isset($where['type']) && !!$where['type']); | ||||
$list = $this->getProductPromotions($list, $promotions_type); | $list = $this->getProductPromotions($list, $promotions_type); | ||||
} | } | ||||
foreach ($list as $k => $v) { | |||||
$list[$k]['price'] = two_num($v['price'] + $v['coin']); | |||||
} | |||||
return $list; | return $list; | ||||
} | } | ||||
namespace crmeb\basic; | namespace crmeb\basic; | ||||
use Firebase\JWT\JWT; | |||||
use think\helper\Str; | use think\helper\Str; | ||||
class BaseAuth | class BaseAuth | ||||
return true; | return true; | ||||
} | } | ||||
public function parseToken(string $jwt) | |||||
{ | |||||
$token = $jwt; | |||||
list($headb64, $bodyb64, $cryptob64) = explode('.', $token); | |||||
$payload = JWT::jsonDecode(JWT::urlsafeB64Decode($bodyb64)); | |||||
return [$payload->jti->id, $payload->jti->type]; | |||||
} | |||||
} | } |
return $res; | return $res; | ||||
} | } | ||||
public function success($data = []) | |||||
public function success($msg = [], $data = []) | |||||
{ | { | ||||
if (is_array($data)) { | |||||
if (is_array($msg)) { | |||||
$res = [ | $res = [ | ||||
'status' => 200, | 'status' => 200, | ||||
'msg' => 'ok', | 'msg' => 'ok', | ||||
'data' => $data, | |||||
'data' => $msg, | |||||
]; | ]; | ||||
} else { | } else { | ||||
$res = [ | |||||
'status' => 200, | |||||
'msg' => $data, | |||||
'data' => [], | |||||
]; | |||||
if ($data) { | |||||
$res = [ | |||||
'status' => 200, | |||||
'msg' => $msg, | |||||
'data' => $data, | |||||
]; | |||||
} else { | |||||
$res = [ | |||||
'status' => 200, | |||||
'msg' => $msg, | |||||
'data' => [], | |||||
]; | |||||
} | |||||
} | } | ||||
return $res; | return $res; | ||||
} | } |