MessageDetailTransformer.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2019/6/6
  6. * Time: 14:08
  7. */
  8. namespace App\Transformers\Circle;
  9. use App\Models\InterestCircle;
  10. use App\Models\InterestCircleMessage;
  11. use App\Models\Post;
  12. use App\Traits\PostTrait;
  13. use App\Traits\UserTrait;
  14. use Illuminate\Support\Carbon;
  15. use League\Fractal\TransformerAbstract;
  16. class MessageDetailTransformer extends TransformerAbstract
  17. {
  18. use UserTrait;
  19. public function transform(InterestCircleMessage $interestCircleMessage)
  20. {
  21. $user = $this->getShortUserInfo($interestCircleMessage['uid']);
  22. $imgs = $interestCircleMessage->imgs->toArray();
  23. $images=[];
  24. foreach($imgs as $key=>$value){
  25. $images[$key]['image'] = $value['image'];
  26. }
  27. return [
  28. 'id' => $interestCircleMessage['id'],
  29. 'created_at' => Carbon::parse($interestCircleMessage['created_at'])->toDateTimeString(),
  30. 'user' => $user ? $user : new \stdClass(),
  31. 'good' => $interestCircleMessage['good'],
  32. 'bad' => $interestCircleMessage['bad'],
  33. 'comment_count' => $interestCircleMessage['comment_count'],
  34. 'content' => $interestCircleMessage['content'],
  35. 'imgs' => $images,
  36. ];
  37. }
  38. }