WalletRecordTransformer.php 2.0 KB
<?php
/**
+-----------------------------------------------------------------------------------------------------------------------
 * 数据转换层: TimesRecord 转换类
+-----------------------------------------------------------------------------------------------------------------------
 *
 * PHP version 7
 *
 * @category  App\Transformers\User
 * @package   App\Transformers\User
 * @author    Richer <yangzi1028@163.com>
 * @date      2023年4月23日14:33:50
 * @copyright 2021-2022 Richer (http://www.Richer.com/)
 * @license   http://www.Richer.com/ License
 * @link      http://www.Richer.com/
 */
namespace App\Transformers\User;

use App\Models\User\TimesRecord;
use App\Models\User\WalletRecord;
use App\Transformers\BaseTransformer;

/**
 * Class WalletRecordTransformer
 * @package App\Transformers\User
 */
class WalletRecordTransformer extends BaseTransformer
{
    /**
     * Transform the WalletRecord entity.
     *
     * @param WalletRecord $model
     *
     * @return array
     * @throws \GuzzleHttp\Exception\GuzzleException
     */
    public function transform(WalletRecord $model)
    {
        return [
            'id'            => (int) $model->id,
            /* place your other model properties here */
            'user_id'       => (int)$model->user_id,
            'amount'       => format_money($model->amount),
            'from_user_name' => optional(optional($model->recordable)->user)->name,
            'from_user_mobile' => optional(optional($model->recordable)->user)->mobile,
            'from_user_nickname' => optional(optional($model->recordable)->user)->nickname,
            'from_user_avatar' => splice_file_path(optional(optional($model->recordable)->user)->avatar),
            'type'       => (int)$model->type,
            'type_show'   => (string)$model->type_show,
            'event'       => (int)$model->event,
            'event_show'   => (string)$model->event_show,
            'created_at'    => format_date($model->created_at),
        ];
    }
}