ActivityUserTransformer.php
3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?php
/**
+-----------------------------------------------------------------------------------------------------------------------
* 数据转换层: ActivityUser 转换类
+-----------------------------------------------------------------------------------------------------------------------
*
* PHP version 7
*
* @category App\Transformers\Activity
* @package App\Transformers\Activity
* @author Richer <yangzi1028@163.com>
* @date 2022年11月2日17:24:39
* @copyright 2020-2022 Richer (http://www.Richer.com/)
* @license http://www.Richer.com/ License
* @link http://www.Richer.com/
*/
namespace App\Transformers\Activity;
use App\Models\Activity\ActivityUser;
use App\Transformers\BaseTransformer;
/**
* Class ActivityUserTransformer
*
* @package App\Transformers
*/
class ActivityUserTransformer extends BaseTransformer
{
/**
* Transform the ActivityUser entity.
*
* @param ActivityUser $model
*
* @return array
*/
public function transform(ActivityUser $model)
{
$output = [
// 'id' => (int) $model->id,
/* place your other model properties here */
'id' => (int) $model->activity_id,
'user_id' => (int) $model->user_id,
'enrolled_at' => format_date($model->enrolled_at),
'attended_at' => format_date($model->attended_at),
'status_show' => $model->status_show,
'status_color_show' => $model->status_color_show,
// 'end_date' => format_date($model->end_date, 'Y-m-d'),
];
return $this->setOutputFields($output, $model);
}
/**
* 设置 专用字段
*
* @param $return
* @param $model
*/
public function setSpecialFields(&$return, $model)
{
$activity = optional($model->activity);
// 设置专用字段
$return['user_name'] = (string)$model->user->name;
$return['user_mobile'] = (string)$model->user->mobile;
$return['title'] = (string)$activity->title;
// $return['body'] = (string)$activity->body;
$return['address'] = (string)$activity->address;
// $return['description'] = (string)$activity->description;
$return['cover_image'] = (string)$activity->cover_image;
$return['activity_title'] = (string)$activity->title;
// $return['body'] = (string)$activity->body;
$return['activity_address'] = (string)$activity->address;
// $return['description'] = (string)$activity->description;
$return['activity_cover_image'] = (string)$activity->cover_image;
// $return['images'] = $activity->images;
$return['quota'] = (int)$activity->quota;
$return['enrolled_quota'] = (int)$activity->enrolled_quota;
$return['remaining_quota'] = (int)$activity->remaining_quota;
$return['start_date'] = format_date($activity->start_date, 'Y-m-d');
$return['end_date'] = format_date($activity->end_date, 'Y-m-d');
$return['status_color_show'] = $model->status_color_show;
}
}