diff --git a/app/Http/Controllers/Admin/OtherController.php b/app/Http/Controllers/Admin/OtherController.php index 2bf97ca..57985de 100755 --- a/app/Http/Controllers/Admin/OtherController.php +++ b/app/Http/Controllers/Admin/OtherController.php @@ -182,8 +182,7 @@ class OtherController extends CommonController } // 全国数据 - $countryArea = Company::groupBy('company_city')->whereNotNull('company_city') - ->get(['company_city']); + $countryArea = Company::groupBy('company_city')->whereNotNull('company_city')->get(['company_city']); $country = []; foreach ($countryArea as $item) { $country[] = [ @@ -684,7 +683,8 @@ class OtherController extends CommonController private function getCoursesHomeParams() { $start_date = request('start_date', CourseType::START_DATE); - $end_date = request('end_date', date('Y-m-d')); + // 默认结束日期一年以后 + $end_date = request('end_date', date('Y-m-d', strtotime('+10 year'))); $course_type_id = request('course_type_id', ''); if ($course_type_id) { // 部分 diff --git a/app/Http/Controllers/Mobile/OtherController.php b/app/Http/Controllers/Mobile/OtherController.php index f238021..58cb21c 100755 --- a/app/Http/Controllers/Mobile/OtherController.php +++ b/app/Http/Controllers/Mobile/OtherController.php @@ -95,9 +95,8 @@ class OtherController extends CommonController } $YuanheRepository = new YuanheRepository(); $result = $YuanheRepository->search(['keyword' => $all['company_name']]); - $result = json_decode($result, true); - if (!$result) { - return $this->fail([ResponseCode::ERROR_PARAMETER, '获取失败']); + if (empty($result)) { + return $this->fail([ResponseCode::ERROR_PARAMETER, '无数据']); } $list = []; foreach ($result as $item) { @@ -109,6 +108,38 @@ class OtherController extends CommonController return $this->success($list); } + /** + * @OA\Get( + * path="/api/mobile/other/company-detail", + * tags={"小程序-其他"}, + * summary="公司详情", + * @OA\Parameter(name="company_name", in="query", @OA\Schema(type="integer"), required=true, description="公司名字"), + * @OA\Response( + * response=200, + * description="操作成功" + * ) + * ) + */ + public function companyDetail() + { + $all = \request()->all(); + $messages = [ + 'company_name.required' => '公司名称必填', + ]; + $validator = Validator::make($all, [ + 'company_name' => 'required', + ], $messages); + if ($validator->fails()) { + return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]); + } + $YuanheRepository = new YuanheRepository(); + $result = $YuanheRepository->companyInfo(['enterpriseName' => $all['company_name']]); + if (empty($result)) { + return $this->fail([ResponseCode::ERROR_PARAMETER, '无数据']); + } + return $this->success($result); + } + /** * @OA\Get( * path="/api/mobile/other/company-list", diff --git a/app/Models/CourseSign.php b/app/Models/CourseSign.php index f0a7c38..eb0d8ec 100755 --- a/app/Models/CourseSign.php +++ b/app/Models/CourseSign.php @@ -90,16 +90,16 @@ class CourseSign extends SoftDeletesModel })->whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->whereHas('user', function ($query) use ($area) { - if (isset($area)) { - if ($area == '苏州市外') { - $allArea = ParameterDetail::where('parameter_id', 5)->get(); - $query->whereNotIn('company_area', $allArea->pluck('value')); - } else { - $query->where('company_area', $area); - } - } +// if (isset($area)) { +// if ($area == '苏州市外') { +// $allArea = ParameterDetail::where('parameter_id', 5)->get(); +// $query->whereNotIn('company_area', $allArea->pluck('value')); +// } else { +// $query->where('company_area', $area); +// } +// } })->whereNotIn('status', [4, 5]); if ($retList) { // 返回列表 @@ -118,16 +118,16 @@ class CourseSign extends SoftDeletesModel $courseSignByType = CourseSign::whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->whereHas('user', function ($query) use ($area) { - if ($area) { - if ($area == '苏州市外') { - $allArea = ParameterDetail::where('parameter_id', 5)->get(); - $query->whereNotIn('company_area', $allArea->pluck('value')); - } else { - $query->where('company_area', $area); - } - } +// if ($area) { +// if ($area == '苏州市外') { +// $allArea = ParameterDetail::where('parameter_id', 5)->get(); +// $query->whereNotIn('company_area', $allArea->pluck('value')); +// } else { +// $query->where('company_area', $area); +// } +// } })->where(function ($query) use ($status, $course_ids) { if (isset($status)) { $query->where('status', $status); @@ -136,10 +136,10 @@ class CourseSign extends SoftDeletesModel $query->whereIn('course_id', $course_ids); } })->whereNotIn('status', [4, 5])->get(); - $user = User::whereIn('id', $courseSignByType->pluck('user_id'))->distinct('mobile'); + $user = User::whereIn('id', $courseSignByType->pluck('user_id'))->groupBy('mobile')->get(); if ($retList) { // 列表 - return $user->groupBy('mobile')->get(); + return $user; } else { // 统计数据 return $user->count(); @@ -154,7 +154,7 @@ class CourseSign extends SoftDeletesModel $courseSignByType = CourseSign::whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->whereNotIn('status', [4, 5])->get(); $list = Company::whereHas('users', function ($query) use ($courseSignByType) { $query->whereIn('id', $courseSignByType->pluck('user_id')); @@ -181,7 +181,7 @@ class CourseSign extends SoftDeletesModel $courseSignsForGanbu = self::whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->where(function ($query) use ($course_ids) { if ($course_ids) { $query->whereIn('course_id', $course_ids); @@ -211,7 +211,7 @@ class CourseSign extends SoftDeletesModel $courseSignsForStock = self::whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->where(function ($query) use ($course_ids) { if ($course_ids) { $query->whereIn('course_id', $course_ids); @@ -268,7 +268,7 @@ class CourseSign extends SoftDeletesModel })->whereHas('course', function ($query) use ($start_date, $end_date) { // 开始结束日期的筛选。or查询 $query->whereBetween('start_date', [$start_date, $end_date]) - ->whereBetween('end_date', [$start_date, $end_date]); + ->orWhereBetween('end_date', [$start_date, $end_date]); })->whereHas('user')->whereNotIn('status', [4, 5]); // 地区 $suzhouArea = Company::where('company_city', '苏州市')->pluck('company_area')->unique(); @@ -285,7 +285,7 @@ class CourseSign extends SoftDeletesModel // 未去重 'total' => $sourseSignList2->count(), // 已去重 - 'total_unique' => User::whereIn('id', $sourseSignList2->pluck('user_id'))->distinct('mobile')->groupBy('mobile')->get()->count(), + 'total_unique' => User::whereIn('id', $sourseSignList2->pluck('user_id'))->groupBy('mobile')->get()->count(), ]; } @@ -298,7 +298,7 @@ class CourseSign extends SoftDeletesModel 'area' => '苏州市外', 'total' => $courseSignList3->count(), // 已去重 - 'total_unique' => User::groupBy('mobile')->whereIn('id', $courseSignList3->pluck('user_id'))->count(), + 'total_unique' => User::groupBy('mobile')->whereIn('id', $courseSignList3->pluck('user_id'))->get()->count(), ]; if ($retList) { diff --git a/app/Repositories/YuanheRepository.php b/app/Repositories/YuanheRepository.php index ade2cb4..4bae544 100755 --- a/app/Repositories/YuanheRepository.php +++ b/app/Repositories/YuanheRepository.php @@ -73,10 +73,10 @@ class YuanheRepository if ($result['code'] == 200) { return $result['data']; } else { - return false; + return []; } } catch (\Exception $e) { - return false; + return []; } } diff --git a/routes/api.php b/routes/api.php index bb82395..f5abbb4 100755 --- a/routes/api.php +++ b/routes/api.php @@ -277,6 +277,8 @@ Route::group(["namespace" => "Mobile", "prefix" => "mobile"], function () { Route::get('other/banner', [\App\Http\Controllers\Mobile\OtherController::class, "banner"]); // 公司查询 Route::get('other/company', [\App\Http\Controllers\Mobile\OtherController::class, "company"]); + // 公司详情 + Route::get('other/company-detail', [\App\Http\Controllers\Mobile\OtherController::class, "companyDetail"]); // 公司查询 Route::get('other/company-list', [\App\Http\Controllers\Mobile\OtherController::class, "companyList"]); // 通知