Merge branch 'main' into lhj - 충돌 해결 (메인 브랜치 코드 선택)
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
// 🔧 Prisma 클라이언트 중복 생성 방지 - 기존 인스턴스 재사용
|
||||
import prisma = require("../config/database");
|
||||
import { query, queryOne } from "../database/db";
|
||||
|
||||
export interface ControlCondition {
|
||||
id: string;
|
||||
@@ -82,9 +81,10 @@ export class DataflowControlService {
|
||||
});
|
||||
|
||||
// 관계도 정보 조회
|
||||
const diagram = await prisma.dataflow_diagrams.findUnique({
|
||||
where: { diagram_id: diagramId },
|
||||
});
|
||||
const diagram = await queryOne<any>(
|
||||
`SELECT * FROM dataflow_diagrams WHERE diagram_id = $1`,
|
||||
[diagramId]
|
||||
);
|
||||
|
||||
if (!diagram) {
|
||||
return {
|
||||
@@ -527,9 +527,9 @@ export class DataflowControlService {
|
||||
}
|
||||
|
||||
// 대상 테이블에서 조건에 맞는 데이터 조회
|
||||
const queryResult = await prisma.$queryRawUnsafe(
|
||||
const queryResult = await query<Record<string, any>>(
|
||||
`SELECT ${condition.field} FROM ${tableName} WHERE ${condition.field} = $1 LIMIT 1`,
|
||||
condition.value
|
||||
[condition.value]
|
||||
);
|
||||
|
||||
dataToCheck =
|
||||
@@ -758,14 +758,14 @@ export class DataflowControlService {
|
||||
|
||||
try {
|
||||
// 동적 테이블 INSERT 실행
|
||||
const result = await prisma.$executeRawUnsafe(
|
||||
`
|
||||
INSERT INTO ${targetTable} (${Object.keys(insertData).join(", ")})
|
||||
VALUES (${Object.keys(insertData)
|
||||
.map(() => "?")
|
||||
.join(", ")})
|
||||
`,
|
||||
...Object.values(insertData)
|
||||
const placeholders = Object.keys(insertData)
|
||||
.map((_, i) => `$${i + 1}`)
|
||||
.join(", ");
|
||||
|
||||
const result = await query(
|
||||
`INSERT INTO ${targetTable} (${Object.keys(insertData).join(", ")})
|
||||
VALUES (${placeholders})`,
|
||||
Object.values(insertData)
|
||||
);
|
||||
|
||||
results.push({
|
||||
@@ -878,10 +878,7 @@ export class DataflowControlService {
|
||||
);
|
||||
console.log(`📊 쿼리 파라미터:`, allValues);
|
||||
|
||||
const result = await prisma.$executeRawUnsafe(
|
||||
updateQuery,
|
||||
...allValues
|
||||
);
|
||||
const result = await query(updateQuery, allValues);
|
||||
|
||||
console.log(
|
||||
`✅ UPDATE 성공 (${i + 1}/${action.fieldMappings.length}):`,
|
||||
@@ -1024,10 +1021,7 @@ export class DataflowControlService {
|
||||
console.log(`🚀 실행할 쿼리:`, deleteQuery);
|
||||
console.log(`📊 쿼리 파라미터:`, whereValues);
|
||||
|
||||
const result = await prisma.$executeRawUnsafe(
|
||||
deleteQuery,
|
||||
...whereValues
|
||||
);
|
||||
const result = await query(deleteQuery, whereValues);
|
||||
|
||||
console.log(`✅ DELETE 성공:`, {
|
||||
table: tableName,
|
||||
@@ -1080,18 +1074,15 @@ export class DataflowControlService {
|
||||
columnName: string
|
||||
): Promise<boolean> {
|
||||
try {
|
||||
const result = await prisma.$queryRawUnsafe<Array<{ exists: boolean }>>(
|
||||
`
|
||||
SELECT EXISTS (
|
||||
const result = await query<{ exists: boolean }>(
|
||||
`SELECT EXISTS (
|
||||
SELECT 1
|
||||
FROM information_schema.columns
|
||||
WHERE table_name = $1
|
||||
AND column_name = $2
|
||||
AND table_schema = 'public'
|
||||
) as exists
|
||||
`,
|
||||
tableName,
|
||||
columnName
|
||||
) as exists`,
|
||||
[tableName, columnName]
|
||||
);
|
||||
|
||||
return result[0]?.exists || false;
|
||||
|
||||
Reference in New Issue
Block a user