品牌下能源

This commit is contained in:
2025-05-23 17:49:11 +08:00
parent d292d6690f
commit 17188855b6
4 changed files with 32 additions and 1 deletions
@@ -156,4 +156,20 @@ class VehicleNewController extends BaseController
return $this->errorResponse($th->getMessage());
}
}
public function enegry(Request $request, string $scene = 'energy'): Response
{
try {
$enegry = VehicleNewService::enegry($request->all());
foreach ($enegry as $key => $item) {
$enegry[$key] = [
'id' => $item['id'],
'name' => $item['name']
];
}
return $this->successResponse($enegry);
} catch (\Throwable $th) {
return $this->errorResponse($th->getMessage().$th->getLine().$th->getFile());
}
}
}
+1 -1
View File
@@ -65,7 +65,7 @@ class BrandService extends BaseService
return [
'filters' => [
['field' => 'status', 'operator' => '=', 'value' => '1'],
['field' => 'is_hot', 'operator' => '=', 'value' => 1],
['field' => 'id', 'operator' => '=', 'value' => $params['id']],
],
'fields' => ['id', 'status', 'sort', 'toppic', 'descpic', 'logo', 'letter', 'is_hot', 'created_at', 'updated_at'],
'relations' => [
+13
View File
@@ -2,6 +2,8 @@
namespace app\apis\service;
use app\apis\model\EnergyModel;
use app\apis\model\EnergyTranslationModel;
use app\apis\model\VehicleNewModel;
use app\mzl\common\services\BaseService;
use Illuminate\Database\Eloquent\Builder;
@@ -89,6 +91,17 @@ class VehicleNewService extends BaseService
];
}
public static function enegry($params)
{
$locale = locale();
$energyId = VehicleNewModel::select('energy')->where(['brand'=>$params['brand']])->groupBy('energy')->get()->pluck('energy');
$energys = EnergyModel::whereIn('id',$energyId)->get()->toArray();
foreach ($energys as $key => $energy) {
$translation = EnergyTranslationModel::where(['locale'=>$locale,'energy_id'=>$energy['id']])->first()->toArray();
$energys[$key]['name'] = isset($translation['name'])?$translation['name']:'';
}
return $energys;
}
// 声明需要多语言翻译
protected array $translatable = [
+2
View File
@@ -36,6 +36,8 @@ Route::group('/apis', function() {
Route::any('/email/subscribe', [\app\apis\controller\SubscribeController::class, 'store']);
// 车辆类型
Route::any('/vehicle/types', [\app\apis\controller\TypesController::class, 'all']);
// 品牌下车辆的能源类型
Route::any('/vehicle/energy', [\app\apis\controller\VehicleNewController::class, 'enegry']);
// 车辆随机
Route::any('/vehicle/random', [\app\apis\controller\VehicleDataController::class, 'random']);
// 隐私协议