import { prisma } from '@/libs/prisma' import { NextRequest, NextResponse } from 'next/server' import { loggerWrapper } from '@/libs/api-wrapper' type AdminSubPerson = { storeId: string userId: string eMail: string authority: string } // 2차점이 자신에게 매핑 된 1차 판매점과 관리자 정보 조회 async function getSubMissionAdminSub(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 MCS.STORE_ID AS targetStoreId , MCS.STORE_QCAST_NM AS targetStoreNm , MCP.EOS_LOGIN_ID AS repUserId , CONVERT(NVARCHAR(100), DecryptByKey(MCP.EMAIL)) AS repUserEmail , MCP.AUTHORITY AS auth FROM MS_CUST_STOREID MCS WITH(NOLOCK) LEFT OUTER JOIN MS_CUST_PERSON MCP WITH(NOLOCK) ON MCS.COMP_CD = MCP.COMP_CD AND MCS.STORE_ID = MCP.STORE_ID AND MCP.DEL_YN = 'N' WHERE MCS.COMP_CD = '5200' AND MCS.STORE_ID = (SELECT STORE_ID FROM MS_CUST_AGENCY_STOREID WHERE AGENCY_STORE_ID = '${id}' AND DEL_YN = 'N') AND MCP.EMAIL IS NOT NULL AND MCS.DEL_YN = 'N'; CLOSE SYMMETRIC KEY SYMMETRICKEY; ` const suitable: AdminSubPerson[] = await prisma.$queryRawUnsafe(query) return NextResponse.json({ message: 'Hello, world!' }) } catch (error) { console.error('❌ 데이터 조회 중 오류가 발생했습니다:', error) return NextResponse.json({ error: '데이터 조회 중 오류가 발생했습니다' }, { status: 500 }) } } export const GET = loggerWrapper(getSubMissionAdminSub)