EarningTransformer.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /*
  3. * This file is part of the Jiannei/lumen-api-starter.
  4. *
  5. * (c) Jiannei <longjian.huang@foxmail.com>
  6. *
  7. * This source file is subject to the MIT license that is bundled
  8. * with this source code in the file LICENSE.
  9. */
  10. namespace App\Repositories\Transformers;
  11. use App\Models\Device;
  12. use App\Models\Earning;
  13. use App\Repositories\Enums\DeviceLineEnum;
  14. use App\Repositories\Enums\DeviceLuTypeEnum;
  15. use App\Repositories\Enums\DeviceStatusEnum;
  16. use App\Repositories\Enums\DeviceUseStatusEnum;
  17. use App\Repositories\Enums\DeviceWaterLevelEnum;
  18. use League\Fractal\TransformerAbstract;
  19. class EarningTransformer extends TransformerAbstract
  20. {
  21. public function transform(Earning $earning)
  22. {
  23. $data = [
  24. 'id' => $earning->id,
  25. 'category' => $earning->category,
  26. 'device_id' => $earning->id,
  27. 'day' => $earning->day,
  28. 'day_type' => $earning->day_type,
  29. 'nums' => $earning->nums,
  30. 'type' => $earning->type,
  31. 'total_money' => $earning->total_money,
  32. 'money' => $earning->money,
  33. 'ratio' => $earning->ratio,
  34. 'admin_id' => $earning->admin_id,
  35. 'shop_id' => $earning->shop_id,
  36. 'status' => $earning->status,
  37. 'status_text' => DeviceStatusEnum::getDescription($earning->status),
  38. ];
  39. return $data;
  40. }
  41. public function shop($device)
  42. {
  43. if (!$device->shop) return [];
  44. return $device->shop->only(['a_minute_money', 'b_minute_money', 'ab_minute_money', 'times']);
  45. }
  46. }