import { prisma } from '@/libs/prisma' import { SubmitTargetResponse } from '@/types/Survey' import { NextRequest, NextResponse } from 'next/server' import { loggerWrapper } from '@/libs/api-wrapper' type BuilderPerson = { agencyStoreId: string userId: string eMail: string userAuthCd: string } // 2차점의 시공권한 user가 해당 판매점의 관리자 정보 조회 // N == 일반유저, S == 수퍼유저, B == 시공권한유저 async function getSubmissionBuilder(request: NextRequest): Promise { try { const { searchParams } = new URL(request.url) const id = searchParams.get('id') const query = ` OPEN SYMMETRIC KEY SYMMETRICKEY DECRYPTION BY CERTIFICATE CERTI_QSPJP; SELECT MCAS.AGENCY_STORE_ID AS targetStoreId , MCAS.AGENCY_QCAST_NM AS targetStoreNm , BQU.USER_ID AS repUserId , CONVERT(NVARCHAR(100), DecryptByKey(BQU.EMAIL)) AS repUserEmail , BQU.USER_AUTH_CD AS auth FROM MS_CUST_AGENCY_STOREID MCAS WITH(NOLOCK) LEFT OUTER JOIN BC_QM_USER BQU WITH(NOLOCK) ON MCAS.COMP_CD = BQU.COMP_CD AND MCAS.AGENCY_STORE_ID = BQU.AGENCY_STORE_ID AND MCAS.DEL_YN = 'N' WHERE MCAS.COMP_CD = '5200' AND MCAS.AGENCY_STORE_ID = '${id}' AND BQU.EMAIL IS NOT NULL AND BQU.USER_AUTH_CD != 'B' AND MCAS.DEL_YN = 'N'; CLOSE SYMMETRIC KEY SYMMETRICKEY; ` // const suitable: BuilderPerson[] = await prisma.$queryRawUnsafe(query) // return NextResponse.json({ message: 'Hello, world!' }) const data: SubmitTargetResponse[] = await prisma.$queryRawUnsafe(query) return NextResponse.json(data) } catch (error) { console.error('❌ 데이터 조회 중 오류가 발생했습니다:', error) return NextResponse.json({ error: '데이터 조회 중 오류가 발생했습니다' }, { status: 500 }) } } export const GET = loggerWrapper(getSubmissionBuilder)