show->field($field, $label)->using(ACTIVITY_STATUS::getAll()); } /** * 显示活动类型 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldActivityType(string $field = 'type', string $label = '活动类型'): Show\Field { return $this->show->field($field, $label)->using(ACTIVITY_TYPE::getAll()); } /** * 显示条件类型 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldConditionType(string $field = 'condition_type', string $label = '条件类型'): Show\Field { return $this->show->field($field, $label)->using(CONDITION_TYPE::getAll()); } /** * 显示参与状态 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldParticipationStatus(string $field = 'completion_status', string $label = '参与状态'): Show\Field { return $this->show->field($field, $label)->using(PARTICIPATION_STATUS::getAll()); } /** * 显示奖励状态 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldRewardStatus(string $field = 'reward_status', string $label = '奖励状态'): Show\Field { return $this->show->field($field, $label)->using(REWARD_STATUS::getAll()); } /** * 显示奖励类型 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldRewardType(string $field = 'reward_type', string $label = '奖励类型'): Show\Field { return $this->show->field($field, $label)->using(REWARD_TYPE::getAll()); } /** * 显示奖励来源类型 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldRewardSourceType(string $field = 'source_type', string $label = '奖励来源'): Show\Field { return $this->show->field($field, $label)->using(REWARD_SOURCE_TYPE::getValueDescription()); } /** * 显示活动时间范围 * * @param string $startField 开始时间字段 * @param string $endField 结束时间字段 * @param string $label 标签名 * @return Show\Field */ public function fieldActivityTimeRange(string $startField = 'start_time', string $endField = 'end_time', string $label = '活动时间'): Show\Field { return $this->show->field($startField, $label)->as(function ($startTime) use ($endField) { $endTime = $this->{$endField}; return date('Y-m-d H:i:s', strtotime($startTime)) . ' 至 ' . date('Y-m-d H:i:s', strtotime($endTime)); }); } /** * 显示活动配置 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldActivityConfig(string $field = 'config', string $label = '活动配置'): Show\Field { return $this->show->field($field, $label)->json(); } /** * 显示活动条件 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldActivityConditions(string $field = 'conditions', string $label = '活动条件'): Show\Field { return $this->show->field($field, $label)->json(); } /** * 显示活动奖励 * * @param string $field 字段名 * @param string $label 标签名 * @return Show\Field */ public function fieldActivityRewards(string $field = 'rewards', string $label = '活动奖励'): Show\Field { return $this->show->field($field, $label)->json(); } }