Ken пре 1 недеља
родитељ
комит
12094cfb21

+ 3 - 3
app/Http/Controllers/api/ActivityReward.php

@@ -22,15 +22,15 @@ class ActivityReward extends BaseController
                 'status' => ActivityRewardModel::STATUS_UP
             ]));
             if (!empty($memberId)) {
-                $query->with(['userActivities' => function ($query1) use ($memberId) {
-                    $query1->where('user_id', $memberId);
+                $query->with(['activityUser' => function ($query1) use ($memberId) {
+                    $query1->where('member_id', $memberId);
                 }]);
             }
             $list = $query->orderByDesc('id')->get();
 
             $list->transform(function ($activity) use ($memberId) {
                 if (!empty($memberId)) {
-                    $activity->is_claimed = $activity->userActivities->isNotEmpty();
+                    $activity->is_claimed = $activity->activityUser->isNotEmpty();
                 } else {
                     $activity->is_claimed = false;
                 }

+ 6 - 0
app/Models/ActivityReward.php

@@ -3,6 +3,7 @@
 namespace App\Models;
 
 use App\Constants\Util;
+use Illuminate\Database\Eloquent\Relations\BelongsTo;
 
 
 class ActivityReward extends BaseModel
@@ -13,6 +14,11 @@ class ActivityReward extends BaseModel
     protected $table = 'activity_rewards';
     protected $fillable = ['title', 'sub_title', 'detail_image', 'start_time', 'end_time', 'status'];
 
+    public function activityUser(): BelongsTo
+    {
+        return $this->belongsTo(ActivityUser::class, 'activity_id', 'id');
+    }
+
     protected function getDetailImageAttribute($value)
     {
         return Util::ensureUrl($value);

+ 26 - 0
app/Models/ActivityUser.php

@@ -0,0 +1,26 @@
+<?php
+
+namespace App\Models;
+
+use App\Constants\Util;
+
+class ActivityUser extends BaseModel
+{
+    protected $table = 'activity_rewards';
+    protected $fillable = ['activity_id', 'member_id', 'title', 'sub_title', 'detail_image', 'start_time', 'end_time', 'part_in_time'];
+
+    protected function getDetailImageAttribute($value)
+    {
+        return Util::ensureUrl($value);
+    }
+
+    protected function getStartTimeAttribute($value): string
+    {
+        return date('Y-m-d', $value);
+    }
+
+    protected function getEndTimeAttribute($value): string
+    {
+        return date('Y-m-d', $value);
+    }
+}

+ 1 - 0
database/migrations/2026_01_22_165023_create_activity_user.php

@@ -22,6 +22,7 @@ return new class extends Migration {
             $table->integer('end_time')->comment('结束时间');
             $table->string('detail_image')->comment('活动详情图片');
             $table->tinyInteger('part_in_time')->comment('参与时间');
+            $table->string('member_id')->comment('会员ID');
             $table->timestamps();
         });
     }