Browse Source

车道管理搜索可多语言

master
wanghongjun 3 days ago
parent
commit
22eae4baea
  1. 12
      app/Http/Controllers/Admin/ParkingChannelController.php
  2. 10
      app/Services/AdminTranslationService.php

12
app/Http/Controllers/Admin/ParkingChannelController.php

@ -56,14 +56,14 @@ class ParkingChannelController extends BaseController
if ($request->has('name')) { if ($request->has('name')) {
$name = $request->input('name'); $name = $request->input('name');
if ($name) { if ($name) {
$typeId = 0; $typeId = [];
$nameTypeId = AdminTranslationService::getTypeId(6, $name); $nameTypeIds = AdminTranslationService::getLikeTypeIds(6, $name);
if ($nameTypeId) { if ($nameTypeIds) {
$typeId = $nameTypeId; $typeId = $nameTypeIds;
} }
$query->where(function ($query) use ($name, $typeId) { $query->where(function ($query) use ($name, $typeId) {
$query->orWhere('name', $name); $query->orWhere('name', 'like', "%{$name}%");
$query->orWhere('id', $typeId); $query->orWhereIn('id', $typeId);
}); });
} }
} }

10
app/Services/AdminTranslationService.php

@ -242,6 +242,16 @@ class AdminTranslationService
$query->orWhere('zh_tw', $name); $query->orWhere('zh_tw', $name);
} }
)->value('type_id'); )->value('type_id');
}
public static function getLikeTypeIds($type, $name)
{
return AdminTranslation::query()->where('type', $type)->where(
function ($query) use ($name) {
$query->orWhere('en', 'like', "%{$name}%");
$query->orWhere('zh_cn', 'like', "%{$name}%");
$query->orWhere('zh_tw', 'like', "%{$name}%");
}
)->pluck('type_id');
} }
} }

Loading…
Cancel
Save