get요청 db 저장기능

This commit is contained in:
kjs
2025-09-29 13:32:59 +09:00
parent c9afdec09f
commit 0fca8cd90b
5 changed files with 287 additions and 76 deletions

View File

@@ -30,6 +30,7 @@ interface DataMappingSettingsProps {
httpMethod: string;
availableTables?: TableInfo[];
readonly?: boolean;
tablesLoading?: boolean;
}
export const DataMappingSettings: React.FC<DataMappingSettingsProps> = ({
@@ -38,6 +39,7 @@ export const DataMappingSettings: React.FC<DataMappingSettingsProps> = ({
httpMethod,
availableTables = [],
readonly = false,
tablesLoading = false,
}) => {
const [localConfig, setLocalConfig] = useState<DataMappingConfig>(config);
@@ -228,17 +230,27 @@ export const DataMappingSettings: React.FC<DataMappingSettingsProps> = ({
<Select
value={localConfig.inboundMapping?.targetTable || ""}
onValueChange={(value) => handleInboundMappingChange({ targetTable: value })}
disabled={readonly}
disabled={readonly || tablesLoading}
>
<SelectTrigger>
<SelectValue placeholder="저장할 테이블을 선택하세요" />
<SelectValue placeholder={tablesLoading ? "테이블 목록 로딩 중..." : "저장할 테이블을 선택하세요"} />
</SelectTrigger>
<SelectContent>
{availableTables.map((table) => (
<SelectItem key={table.name} value={table.name}>
{table.displayName || table.name}
{tablesLoading ? (
<SelectItem value="" disabled>
...
</SelectItem>
))}
) : availableTables.length === 0 ? (
<SelectItem value="" disabled>
</SelectItem>
) : (
availableTables.map((table) => (
<SelectItem key={table.name} value={table.name}>
{table.displayName || table.name}
</SelectItem>
))
)}
</SelectContent>
</Select>
</div>