공차등록/운행알림 기능 개선 - vehicles 테이블 출발지/도착지 저장 및 운행종료 시 초기화
This commit is contained in:
@@ -3818,6 +3818,7 @@ export class ButtonActionExecutor {
|
||||
const keyValue = resolveSpecialKeyword(config.trackingStatusKeySourceField || "__userId__", context);
|
||||
|
||||
if (keyValue) {
|
||||
// 상태 업데이트
|
||||
await apiClient.put("/dynamic-form/update-field", {
|
||||
tableName: statusTableName,
|
||||
keyField: keyField,
|
||||
@@ -3826,6 +3827,37 @@ export class ButtonActionExecutor {
|
||||
updateValue: config.trackingStatusOnStart,
|
||||
});
|
||||
console.log("✅ 상태 변경 완료:", config.trackingStatusOnStart);
|
||||
|
||||
// 🆕 출발지/도착지도 vehicles 테이블에 저장
|
||||
if (departure) {
|
||||
try {
|
||||
await apiClient.put("/dynamic-form/update-field", {
|
||||
tableName: statusTableName,
|
||||
keyField: keyField,
|
||||
keyValue: keyValue,
|
||||
updateField: "departure",
|
||||
updateValue: departure,
|
||||
});
|
||||
console.log("✅ 출발지 저장 완료:", departure);
|
||||
} catch {
|
||||
// 컬럼이 없으면 무시
|
||||
}
|
||||
}
|
||||
|
||||
if (arrival) {
|
||||
try {
|
||||
await apiClient.put("/dynamic-form/update-field", {
|
||||
tableName: statusTableName,
|
||||
keyField: keyField,
|
||||
keyValue: keyValue,
|
||||
updateField: "arrival",
|
||||
updateValue: arrival,
|
||||
});
|
||||
console.log("✅ 도착지 저장 완료:", arrival);
|
||||
} catch {
|
||||
// 컬럼이 없으면 무시
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (statusError) {
|
||||
console.warn("⚠️ 상태 변경 실패:", statusError);
|
||||
@@ -4032,6 +4064,23 @@ export class ButtonActionExecutor {
|
||||
updateValue: effectiveConfig.trackingStatusOnStop,
|
||||
});
|
||||
console.log("✅ 상태 변경 완료:", effectiveConfig.trackingStatusOnStop);
|
||||
|
||||
// 🆕 운행 종료 시 vehicles 테이블의 출발지/도착지/위도/경도를 null로 초기화
|
||||
const fieldsToReset = ["departure", "arrival", "latitude", "longitude"];
|
||||
for (const field of fieldsToReset) {
|
||||
try {
|
||||
await apiClient.put("/dynamic-form/update-field", {
|
||||
tableName: statusTableName,
|
||||
keyField: keyField,
|
||||
keyValue: keyValue,
|
||||
updateField: field,
|
||||
updateValue: null,
|
||||
});
|
||||
} catch {
|
||||
// 컬럼이 없으면 무시
|
||||
}
|
||||
}
|
||||
console.log("✅ 출발지/도착지/위도/경도 초기화 완료");
|
||||
}
|
||||
} catch (statusError) {
|
||||
console.warn("⚠️ 상태 변경 실패:", statusError);
|
||||
|
||||
Reference in New Issue
Block a user