AccountService.php 707 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Services;
  3. use Cache;
  4. use App\Profile;
  5. use App\Transformer\Api\AccountTransformer;
  6. use League\Fractal;
  7. use League\Fractal\Serializer\ArraySerializer;
  8. class AccountService {
  9. const CACHE_KEY = 'pf:services:account:';
  10. public static function get($id)
  11. {
  12. // $key = self::CACHE_KEY . ':' . $id;
  13. // $ttl = now()->addSeconds(10);
  14. // return Cache::remember($key, $ttl, function() use($id) {
  15. // });
  16. $fractal = new Fractal\Manager();
  17. $fractal->setSerializer(new ArraySerializer());
  18. $profile = Profile::whereNull('status')->findOrFail($id);
  19. $resource = new Fractal\Resource\Item($profile, new AccountTransformer());
  20. return $fractal->createData($resource)->toArray();
  21. }
  22. }