Доработка апи
parent
f41b0fe7eb
commit
6a25070d4f
|
|
@ -186,8 +186,14 @@ class MobileApiController extends Controller
|
|||
{
|
||||
$started_at = $request->query('started_at');
|
||||
$ended_at = $request->query('ended_at');
|
||||
$class = $request->query('class');
|
||||
|
||||
$marks = UniModel::model('pipi_brand_models')->get();
|
||||
$marks = UniModel::model('pipi_brand_models');
|
||||
if ($class) {
|
||||
$class_id = UniModel::model('pipi_auto_class')->firstWhere('name', $class)->id;
|
||||
$marks = $marks->where('class_id', $class_id);
|
||||
}
|
||||
$marks->get();
|
||||
$availableMarks = [];
|
||||
|
||||
foreach ($marks as $mark) {
|
||||
|
|
@ -219,12 +225,12 @@ class MobileApiController extends Controller
|
|||
'mark' => $mark->name,
|
||||
'year' => $mark->year,
|
||||
'configuration' => $equipment?->name,
|
||||
'people' => $mark?->people,
|
||||
'actuator' => $mark?->actuator,
|
||||
'fuel_type' => $mark?->fuel_type,
|
||||
'hp' => $mark?->hp,
|
||||
'engine_capacity' => $mark?->engine_capacity,
|
||||
'fuel_tank' => $mark?->fuel_tank,
|
||||
'people' => $mark?->people ?? 5,
|
||||
'actuator' => $mark?->actuator ?? 'Передний',
|
||||
'fuel_type' => $mark?->fuel_type ?? 'АКПП',
|
||||
'hp' => $mark?->hp ?? '1.6',
|
||||
'engine_capacity' => $mark?->engine_capacity ?? 1591,
|
||||
'fuel_tank' => $mark?->fuel_tank ?? 50,
|
||||
'conditioner' => $mark?->conditioner,
|
||||
'tariffs' => $tariffs_new
|
||||
];
|
||||
|
|
|
|||
|
|
@ -49,6 +49,39 @@ class Sync1cApiController extends Controller
|
|||
$inspectionKit = json_decode($value['КомпректацияДляОсмотра'], true);
|
||||
}
|
||||
}
|
||||
|
||||
$car = UniModel::model('pipi_auto', $segment->connector)->where('guid', $value['id'])->exist();
|
||||
if ($value['ПометкаУдаления'] == 'Да') {
|
||||
$class_id = UniModel::model('pipi_auto_classes', $segment->connector)
|
||||
->first(['name' => $value['Класс']])->id;
|
||||
$type_id = UniModel::model('pipi_auto_types', $segment->connector)
|
||||
->first(['name' => $value['Тип']]);
|
||||
$brand_id = UniModel::model('pipi_auto_brands', $segment->connector)
|
||||
->first(['name' => $value['Марка']]);
|
||||
$color_id = UniModel::model('pipi_auto_colors', $segment->connector)
|
||||
->first(['name' => $value['Цвет']]);
|
||||
$model = UniModel::model('pipi_brand_models', $segment->connector)
|
||||
->first([
|
||||
'name' => $value['Модель'],
|
||||
'brand_id' => $brand_id->id,
|
||||
'year' => $this->formatDate($value['ГодПроизводства'])?->format('Y'),
|
||||
]);
|
||||
} else {
|
||||
$class_id = UniModel::model('pipi_auto_classes', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Класс']])->id;
|
||||
$type_id = UniModel::model('pipi_auto_types', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Тип']]);
|
||||
$brand_id = UniModel::model('pipi_auto_brands', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Марка']]);
|
||||
$color_id = UniModel::model('pipi_auto_colors', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Цвет']]);
|
||||
$model = UniModel::model('pipi_brand_models', $segment->connector)
|
||||
->firstOrCreate([
|
||||
'name' => $value['Модель'],
|
||||
'brand_id' => $brand_id->id,
|
||||
'year' => $this->formatDate($value['ГодПроизводства'])?->format('Y'),
|
||||
]);
|
||||
}
|
||||
UniModel::model('pipi_auto', $segment->connector)->updateOrCreate(
|
||||
[
|
||||
'guid' => $value['id'],
|
||||
|
|
@ -56,21 +89,11 @@ class Sync1cApiController extends Controller
|
|||
[
|
||||
'code' => $value['Код'],
|
||||
'name' => $value['Наименование'],
|
||||
'type_id' => UniModel::model('pipi_auto_types', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Тип']])->id,
|
||||
'class_id' => UniModel::model('pipi_auto_classes', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Класс']])->id,
|
||||
'brand_id' => UniModel::model('pipi_auto_brands', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Марка']])->id,
|
||||
'model_id' => UniModel::model('pipi_brand_models', $segment->connector)
|
||||
->firstOrCreate([
|
||||
'name' => $value['Модель'],
|
||||
'brand_id' => UniModel::model('pipi_auto_brands', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Марка']])->id,
|
||||
'year' => $this->formatDate($value['ГодПроизводства'])?->format('Y'),
|
||||
])->id,
|
||||
'color_id' => UniModel::model('pipi_auto_colors', $segment->connector)
|
||||
->firstOrCreate(['name' => $value['Цвет']])->id,
|
||||
'type_id' => $type_id->id,
|
||||
'class_id' => $class_id,
|
||||
'brand_id' => $brand_id->id,
|
||||
'model_id' => $model->id,
|
||||
'color_id' => $color_id->id,
|
||||
'serial_number' => $value['СерийныйНомер'],
|
||||
'state_number' => $value['ГосНомер'],
|
||||
'manufacture_year' => $this->formatDate($value['ГодПроизводства'])?->format('Y-m-d'),
|
||||
|
|
@ -88,6 +111,9 @@ class Sync1cApiController extends Controller
|
|||
'deleted_at' => $value['ПометкаУдаления'] == 'Да' ? now() : null,
|
||||
]
|
||||
);
|
||||
|
||||
$model->class_id = $class_id;
|
||||
$model->save();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -238,11 +264,11 @@ class Sync1cApiController extends Controller
|
|||
foreach ($request->all() as $value) {
|
||||
UniModel::model('pipi_auto_calendar', $segment->connector)->updateOrCreate(
|
||||
[
|
||||
'auto_id' => UniModel::model('pipi_auto')->where('name', $value['Имущество'])->first()?->id,
|
||||
'auto_id' => UniModel::model('pipi_auto')->where('guid', $value['id'])->first()?->id,
|
||||
'date' => $this->formatDate($value['Дата']),
|
||||
],
|
||||
[
|
||||
'auto_id' => UniModel::model('pipi_auto')->where('name', $value['Имущество'])->first()?->id,
|
||||
'auto_id' => UniModel::model('pipi_auto')->where('guid', $value['id'])->first()?->id,
|
||||
'date' => $this->formatDate($value['Дата']),
|
||||
'status' => AutoStatusEnums::from($value['Статус'])->name
|
||||
]
|
||||
|
|
|
|||
|
|
@ -55,6 +55,12 @@ return new class extends \A7kz\Platform\Commands\InstallScript {
|
|||
$table->boolean('conditioner')->default(true)->comment('Кондиционер');
|
||||
});
|
||||
}
|
||||
|
||||
if (!Schema::connection($segment->connector)->hasColumn('pipi_brand_models', 'class_id')) {
|
||||
Schema::connection($segment->connector)->table('pipi_brand_models', function ($table) {
|
||||
$table->unsignedBigInteger('class_id')->nullable()->comment('Класс');
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue