From dedef1b8a0c0853396bc3bdc39161d69ac9e8228 Mon Sep 17 00:00:00 2001 From: Hankin Date: Tue, 28 Apr 2026 16:50:39 +0800 Subject: [PATCH] sign in --- .../Server/Admin/ActivityController.php | 31 +++++++++++++------ app/Jobs/AddVirtualMember.php | 5 +-- routes/server/admin/api.php | 3 ++ 3 files changed, 27 insertions(+), 12 deletions(-) diff --git a/app/Http/Controllers/Server/Admin/ActivityController.php b/app/Http/Controllers/Server/Admin/ActivityController.php index 7e6acf0..e6394c6 100644 --- a/app/Http/Controllers/Server/Admin/ActivityController.php +++ b/app/Http/Controllers/Server/Admin/ActivityController.php @@ -1007,6 +1007,23 @@ class ActivityController extends Controller } } + public function communityActivitySignInList(Request $request, $id) + { + $activity = CommunityActivity::where('id', $id)->first(); + if (empty($activity)) reutrn $this->failure("活动不存在"); + + $qrCode = Qrcode::where("merchant_id", $activity->merchant_id)->where("type_id", $activity->merchant_id)->first(); + if (empty($qrCode)) reutrn $this->failure("签到码不存在"); + + $list = SignIn::where("qr_code_id", $qrCode->id)->paginate(); + foreach ($list as $item) { + $item->is_sign = true; + $item->sign_time = $item->created_at->toDateTimeString(); + } + return $this->success("Ok", $list) + + } + /** * 移除活动或服务 * @param Request $request @@ -2938,20 +2955,14 @@ class ActivityController extends Controller } else { $apply_user = $query->paginate(); } - - $qrCode = QrCode::where("type", "community")->where("type_id", $activity_id)->first(); foreach ($apply_user as $item) { + $sign = ActivityMeetingApply::where('activity_id', $activity_id)->where('mobile', $item->mobile)->first(); $item->is_sign = false; $item->sign_time = ''; - // $sign = ActivityMeetingApply::where('activity_id', $activity_id)->where('mobile', $item->mobile)->first(); - if ($qrCode) { - $sign = SignIn::where("qr_code_id", $qrCode->id)->where("merchant_user_id", $item->user_id)->first(); - if (!empty($sign)) { - $item->is_sign = true; - $item->sign_time = $sign->created_at->toDateTimeString(); - } + if (!empty($sign)) { + $item->is_sign = true; + $item->sign_time = $sign->created_at->toDateTimeString(); } - } if ($is_export) { return \Excel::download(new ActivityApplyUserExport($apply_user), 'activity_member.xlsx'); diff --git a/app/Jobs/AddVirtualMember.php b/app/Jobs/AddVirtualMember.php index 4e78593..e32b9f7 100644 --- a/app/Jobs/AddVirtualMember.php +++ b/app/Jobs/AddVirtualMember.php @@ -31,10 +31,11 @@ class AddVirtualMember implements ShouldQueue * @return void */ public function handle() - { + { + Log::info("创建活动成员"); $linkmen = $this->linkmen; foreach ($linkmen as $linkman) { - $this->activity->virtualMembers()->firstOrCreate(['mobile'=>$linkman['mobile'],'name'=>$linkman['name'], 'order_id'=>$this->order->id]); + $this->activity->virtualMembers()->create(['mobile'=>$linkman['mobile'], 'name'=>$linkman['name'],'order_id'=>$this->order->id]); } } } diff --git a/routes/server/admin/api.php b/routes/server/admin/api.php index 6c8850b..6de1f8b 100644 --- a/routes/server/admin/api.php +++ b/routes/server/admin/api.php @@ -223,6 +223,9 @@ Route::middleware('merchant')->group(function () { Route::get('plat/user/reports', 'ActivityController@userReports'); //服务 活动详情 Route::get('plat/community/activity/{id}', 'ActivityController@communityActivityPlat')->where('id', '[0-9]+'); + // 活动签到列表 + Route::get('plat/community/activity/{id}/signIn/list', 'ActivityController@communityActivitySignInList')->where('id', '[0-9]+'); + //服务 活动图片列表 Route::get('plat/community/activity/{id}/photos', 'ActivityController@activityPhotos')->where('id', '[0-9]+'); Route::post('plat/community/activity/{id}/photos', 'ActivityController@storeActvityPhotos')->where('id', '[0-9]+');