From d6198e38834304b6c7064777e3799e00dc367ce6 Mon Sep 17 00:00:00 2001 From: cody <648753004@qq.com> Date: Fri, 19 Sep 2025 14:46:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Admin/GateController.php | 8 ++++++-- app/Http/Controllers/Admin/VisitController.php | 1 + app/Models/Visit.php | 15 ++++++++++++--- routes/api.php | 12 +++++++----- 4 files changed, 26 insertions(+), 10 deletions(-) diff --git a/app/Http/Controllers/Admin/GateController.php b/app/Http/Controllers/Admin/GateController.php index 5f8cbeb..d0dd6c7 100644 --- a/app/Http/Controllers/Admin/GateController.php +++ b/app/Http/Controllers/Admin/GateController.php @@ -94,7 +94,7 @@ class GateController extends CommonController * summary="核销", * description="", * @OA\Parameter(name="admin_id", in="query", @OA\Schema(type="string"), required=false, description="管理员id"), - * @OA\Parameter(name="code", in="query", @OA\Schema(type="string"), required=false, description="编码"), + * @OA\Parameter(name="code", in="query", @OA\Schema(type="string"), required=false, description="编码,身份证,人牌"), * @OA\Parameter(name="car_no", in="query", @OA\Schema(type="string"), required=false, description="停车牌"), * @OA\Parameter(name="person_no", in="query", @OA\Schema(type="string"), required=false, description="人牌"), * @OA\Parameter(name="type", in="query", @OA\Schema(type="string"), required=false, description="1进厂2离厂"), @@ -120,7 +120,11 @@ class GateController extends CommonController if ($validator->fails()) { return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]); } - $check = Visit::where('code', $all['code'])->first(); + $check = Visit::where(function ($query) use ($all) { + $query->where('person_no', "{$all['keyword']}") + ->orWhere('idcard', "{$all['keyword']}") + ->orWhere('code', "{$all['keyword']}"); + })->first(); if (empty($check)) { return $this->fail([ResponseCode::ERROR_BUSINESS, '拜访记录不存在']); } diff --git a/app/Http/Controllers/Admin/VisitController.php b/app/Http/Controllers/Admin/VisitController.php index e60fd55..a98806f 100644 --- a/app/Http/Controllers/Admin/VisitController.php +++ b/app/Http/Controllers/Admin/VisitController.php @@ -169,6 +169,7 @@ class VisitController extends CommonController * @OA\Parameter(name="accept_goods_admin_id", in="query", @OA\Schema(type="string"), required=false, description="收货人id"), * @OA\Parameter(name="work_start_time", in="query", @OA\Schema(type="string"), required=false, description="施工开始时间"), * @OA\Parameter(name="work_end_time", in="query", @OA\Schema(type="string"), required=false, description="施工结束时间"), + * @OA\Parameter(name="vehicle_images", in="query", @OA\Schema(type="string"), required=false, description="车辆图片id数组"), * @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"), * @OA\Response( * response="200", diff --git a/app/Models/Visit.php b/app/Models/Visit.php index 481c92f..dbc9df7 100644 --- a/app/Models/Visit.php +++ b/app/Models/Visit.php @@ -8,14 +8,15 @@ class Visit extends SoftDeletesModel { protected $guarded = ['id']; - protected $appends = ['type_text', 'audit_status_text', 'file_detail']; + protected $appends = ['type_text', 'audit_status_text', 'file_detail', 'vehicle_images_detail']; protected $casts = [ 'follw_people' => 'json', 'cars' => 'json', 'file' => 'json', 'person_no' => 'json', - 'car_no' => 'json' + 'car_no' => 'json', + 'vehicle_images' => 'json' ]; public function getFileDetailAttribute() @@ -26,6 +27,14 @@ class Visit extends SoftDeletesModel return Upload::whereIn('id', $this->file)->get(); } + public function getVehicleImagesDetailAttribute() + { + if (empty($this->vehicle_images)) { + return []; + } + return Upload::whereIn('id', $this->vehicle_images)->get(); + } + public function getTypeTextAttribute() { $array = [1 => '普通访客', 2 => '施工访客', 3 => '物流访客']; @@ -89,7 +98,7 @@ class Visit extends SoftDeletesModel } // 小程序订阅消息 - public static function subMsg($template_id, $openid, $data,$id) + public static function subMsg($template_id, $openid, $data, $id) { $config = [ 'app_id' => \config('app.wechat_appid'), diff --git a/routes/api.php b/routes/api.php index e24b59b..20e4575 100644 --- a/routes/api.php +++ b/routes/api.php @@ -19,14 +19,16 @@ Route::middleware('auth:sanctum')->get('/user', function (Request $request) { }); -// 门岗管理 -Route::get("admin/gate/user-list", [\App\Http\Controllers\Admin\GateController::class, "uerList"]); -Route::get("admin/gate/visit-list", [\App\Http\Controllers\Admin\GateController::class, "visitList"]); -Route::get("admin/gate/use-code", [\App\Http\Controllers\Admin\GateController::class, "useCode"]); -Route::post("admin/import", [\App\Http\Controllers\Admin\AdminController::class, "import"]); + // 后台 Route::group(["namespace" => "Admin", "prefix" => "admin", "middleware" => "sanctum.jwt:admin,rbac"], function () { + // 门岗管理 + Route::get("gate/user-list", [\App\Http\Controllers\Admin\GateController::class, "uerList"]); + Route::get("gate/visit-list", [\App\Http\Controllers\Admin\GateController::class, "visitList"]); + Route::get("gate/use-code", [\App\Http\Controllers\Admin\GateController::class, "useCode"]); + Route::post("import", [\App\Http\Controllers\Admin\AdminController::class, "import"]); + // 统计 Route::get("chart/month", [\App\Http\Controllers\Admin\ChartController::class, "month"]); Route::get("chart/time", [\App\Http\Controllers\Admin\ChartController::class, "time"]);