fix: Prevent duplicate car creation when adding from All Cars tab

- Backend: Check local_car_id first before creating new car
- Frontend: Pass local_car_id to indicate car already exists in DB
This commit is contained in:
AutonetSellCar Deploy
2026-02-01 21:29:51 +09:00
parent fd0a480ed2
commit f785e85270
2 changed files with 11 additions and 1 deletions

View File

@@ -337,10 +337,17 @@ def admin_add_vehicle(
# Extract car data
car_data = vehicle_data.car_data
source_id = str(car_data.get("id", ""))
local_car_id = car_data.get("local_car_id") # Already exists in local DB
# Check if car already exists in cars table
existing_car = None
if source_id:
# First, check by local_car_id (for cars already in local DB)
if local_car_id:
existing_car = db.query(Car).filter(Car.id == int(local_car_id)).first()
# If not found, check by carmodoo source_id
if not existing_car and source_id:
existing_car = db.query(Car).filter(
Car.source == "carmodoo",
Car.source_id == source_id
@@ -349,6 +356,8 @@ def admin_add_vehicle(
car_id = None
if existing_car:
car_id = existing_car.id
# Ensure local_car_id is in car_data for frontend
car_data["local_car_id"] = car_id
elif source_id:
# Create new car record from car_data
new_car = Car(

View File

@@ -1121,6 +1121,7 @@ export default function CarsAdminPage() {
request_id: parseInt(requestId),
car_data: {
id: car.id.toString(),
local_car_id: car.id, // 로컬 DB에 이미 있는 차량임을 표시
car_name: car.car_name,
maker_name: car.maker?.name,
model_name: car.model?.name,