feature/survey-sales #1
@ -0,0 +1,3 @@
|
||||
# 모바일 디바이스로 로컬 서버 확인하려면 자신 IP 주소로 변경
|
||||
# 다시 로컬에서 개발할때는 localhost로 변경
|
||||
NEXT_PUBLIC_API_URL=http://localhost:3000
|
||||
@ -0,0 +1 @@
|
||||
NEXT_PUBLIC_API_URL=http://172.30.1.35:3000
|
||||
@ -6,6 +6,35 @@ const nextConfig: NextConfig = {
|
||||
sassOptions: {
|
||||
includePaths: [path.join(__dirname, './src/styles')],
|
||||
},
|
||||
async rewrites() {
|
||||
return [
|
||||
{
|
||||
source: '/:path*',
|
||||
destination: `${process.env.NEXT_PUBLIC_API_URL}/:path*`,
|
||||
},
|
||||
]
|
||||
},
|
||||
async headers() {
|
||||
return [
|
||||
{
|
||||
source: '/api/:path*',
|
||||
headers: [
|
||||
{
|
||||
key: 'Access-Control-Allow-Origin',
|
||||
value: '*',
|
||||
},
|
||||
{
|
||||
key: 'Access-Control-Allow-Methods',
|
||||
value: 'GET, POST, PUT, DELETE, OPTIONS',
|
||||
},
|
||||
{
|
||||
key: 'Access-Control-Allow-Headers',
|
||||
value: 'Content-Type, Authorization',
|
||||
},
|
||||
],
|
||||
},
|
||||
]
|
||||
},
|
||||
}
|
||||
|
||||
export default nextConfig
|
||||
|
||||
@ -95,111 +95,111 @@ model MS_SUITABLE {
|
||||
// 조사 매물 기본 정보
|
||||
model SD_SERVEY_SALES_BASIC_INFO {
|
||||
//일련번호
|
||||
id Int @id @default(autoincrement())
|
||||
id Int @id @default(autoincrement())
|
||||
//담당자명
|
||||
representative String @db.VarChar(200)
|
||||
representative String @db.VarChar(200)
|
||||
//판매점
|
||||
store String? @db.VarChar(200)
|
||||
store String? @db.VarChar(200)
|
||||
//시공점
|
||||
construction_point String? @db.VarChar(200)
|
||||
construction_point String? @db.VarChar(200)
|
||||
//현재 조사일
|
||||
investigation_date String? @db.VarChar(10)
|
||||
investigation_date String? @db.VarChar(10)
|
||||
//건물명
|
||||
building_name String? @db.VarChar(200)
|
||||
building_name String? @db.VarChar(200)
|
||||
//고객명
|
||||
customer_name String? @db.VarChar(200)
|
||||
customer_name String? @db.VarChar(200)
|
||||
//우편번호
|
||||
post_code String? @db.VarChar(10)
|
||||
post_code String? @db.VarChar(10)
|
||||
//주소
|
||||
address String? @db.VarChar(200)
|
||||
address String? @db.VarChar(200)
|
||||
//상세주소
|
||||
address_detail String? @db.VarChar(300)
|
||||
address_detail String? @db.VarChar(300)
|
||||
//제출상태
|
||||
submission_status Boolean @default(false)
|
||||
submission_status Boolean @default(false)
|
||||
//제출일
|
||||
submission_date DateTime? @db.Date
|
||||
submission_date DateTime? @db.Date
|
||||
//상세정보
|
||||
detail_info SD_SERVEY_SALES_DETAIL_INFO @relation(fields: [detail_info_id], references: [id])
|
||||
detail_info_id Int @unique
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime @updatedAt
|
||||
detail_info SD_SERVEY_SALES_DETAIL_INFO?
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime @updatedAt
|
||||
}
|
||||
|
||||
// 조사 매물 전기 지붕 정보
|
||||
model SD_SERVEY_SALES_DETAIL_INFO {
|
||||
//일련번호
|
||||
id Int @id @default(autoincrement())
|
||||
id Int @id @default(autoincrement())
|
||||
//전기계약 용량
|
||||
contract_capacity String? @db.VarChar(20)
|
||||
contract_capacity String? @db.VarChar(20)
|
||||
//전기 소매 회사
|
||||
retail_company String? @db.VarChar(100)
|
||||
retail_company String? @db.VarChar(100)
|
||||
//전기 부대 설비
|
||||
supplementary_facilities Int? @db.Int
|
||||
supplementary_facilities Int? @db.Int
|
||||
//전기 부대 설비 기타
|
||||
supplementary_facilities_etc String? @db.VarChar(200)
|
||||
supplementary_facilities_etc String? @db.VarChar(200)
|
||||
//설치 희망 시스템
|
||||
installation_system Int? @db.Int
|
||||
installation_system Int? @db.Int
|
||||
//설치 희망 시스템 기타
|
||||
installation_system_etc String? @db.VarChar(200)
|
||||
installation_system_etc String? @db.VarChar(200)
|
||||
//건축 연수
|
||||
construction_year Int? @db.Int
|
||||
construction_year Int? @db.Int
|
||||
//건축 연수 기타
|
||||
construction_year_etc String? @db.VarChar(200)
|
||||
construction_year_etc String? @db.VarChar(200)
|
||||
//지붕재
|
||||
roof_material Int? @db.Int
|
||||
roof_material Int? @db.Int
|
||||
//지붕재 기타
|
||||
roof_material_etc String? @db.VarChar(200)
|
||||
roof_material_etc String? @db.VarChar(200)
|
||||
//지붕 모양
|
||||
roof_shape Int? @db.Int
|
||||
roof_shape Int? @db.Int
|
||||
//지붕 모양 기타
|
||||
roof_shape_etc String? @db.VarChar(200)
|
||||
roof_shape_etc String? @db.VarChar(200)
|
||||
//지붕 경사도
|
||||
roof_slope String? @db.VarChar(5)
|
||||
roof_slope String? @db.VarChar(5)
|
||||
//주택 구조
|
||||
house_structure Int? @db.Int
|
||||
house_structure Int? @db.Int
|
||||
//주택 구조 기타
|
||||
house_structure_etc String? @db.VarChar(200)
|
||||
house_structure_etc String? @db.VarChar(200)
|
||||
//서까래 재질
|
||||
rafter_material Int? @db.Int
|
||||
rafter_material Int? @db.Int
|
||||
//서까래 재질 기타
|
||||
rafter_material_etc String? @db.VarChar(200)
|
||||
rafter_material_etc String? @db.VarChar(200)
|
||||
//서까래 크기
|
||||
rafter_size Int? @db.Int
|
||||
rafter_size Int? @db.Int
|
||||
//서까래 크기 기타
|
||||
rafter_size_etc String? @db.VarChar(200)
|
||||
rafter_size_etc String? @db.VarChar(200)
|
||||
//서까래 피치
|
||||
rafter_pitch Int? @db.Int
|
||||
rafter_pitch Int? @db.Int
|
||||
//서까래 피치 기타
|
||||
rafter_pitch_etc String? @db.VarChar(200)
|
||||
rafter_pitch_etc String? @db.VarChar(200)
|
||||
//서까래 방향
|
||||
rafter_direction Int? @db.Int
|
||||
rafter_direction Int? @db.Int
|
||||
//노지판 종류
|
||||
open_field_plate_kind Int? @db.Int
|
||||
open_field_plate_kind Int? @db.Int
|
||||
//노지판 종류 기타
|
||||
open_field_plate_kind_etc String? @db.VarChar(200)
|
||||
open_field_plate_kind_etc String? @db.VarChar(200)
|
||||
//노지판 두께
|
||||
open_field_plate_thickness String? @db.VarChar(5)
|
||||
open_field_plate_thickness String? @db.VarChar(5)
|
||||
//누수 흔적
|
||||
leak_trace Boolean? @default(false)
|
||||
leak_trace Boolean? @default(false)
|
||||
//방수재 종류
|
||||
waterproof_material Int? @db.Int
|
||||
waterproof_material Int? @db.Int
|
||||
//방수재 종류 기타
|
||||
waterproof_material_etc String? @db.VarChar(200)
|
||||
waterproof_material_etc String? @db.VarChar(200)
|
||||
//단열재 여부
|
||||
insulation_presence Int? @db.Int
|
||||
insulation_presence Int? @db.Int
|
||||
//단열재 여부 기타
|
||||
insulation_presence_etc String? @db.VarChar(200)
|
||||
insulation_presence_etc String? @db.VarChar(200)
|
||||
//지붕 구조 순서
|
||||
structure_order Int? @db.Int
|
||||
structure_order Int? @db.Int
|
||||
//지붕 구조 순서 기타
|
||||
structure_order_etc String? @db.VarChar(200)
|
||||
structure_order_etc String? @db.VarChar(200)
|
||||
//설치 가능 여부
|
||||
installation_availability Int? @db.Int
|
||||
installation_availability Int? @db.Int
|
||||
//설치 가능 여부 기타
|
||||
installation_availability_etc String? @db.VarChar(200)
|
||||
installation_availability_etc String? @db.VarChar(200)
|
||||
//메모
|
||||
memo String? @db.VarChar(500)
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime @updatedAt
|
||||
basic_info SD_SERVEY_SALES_BASIC_INFO?
|
||||
memo String? @db.VarChar(500)
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime @updatedAt
|
||||
basic_info SD_SERVEY_SALES_BASIC_INFO @relation(fields: [basic_info_id], references: [id])
|
||||
basic_info_id Int @unique
|
||||
}
|
||||
|
||||
@ -24,12 +24,14 @@ export async function POST(request: Request) {
|
||||
|
||||
const cookieStore = await cookies()
|
||||
const session = await getIronSession<SessionData>(cookieStore, sessionOptions)
|
||||
|
||||
console.log('start session edit!')
|
||||
session.username = user.username!
|
||||
session.email = user.email!
|
||||
session.isLoggedIn = true
|
||||
|
||||
console.log('end session edit!')
|
||||
await session.save()
|
||||
console.log('🚀 ~ POST ~ session:', session)
|
||||
|
||||
// return NextResponse.redirect(new URL(process.env.NEXT_PUBLIC_URL!, request.url))
|
||||
return NextResponse.json(user)
|
||||
}
|
||||
|
||||
@ -26,7 +26,7 @@ export default function RootLayout({
|
||||
}>) {
|
||||
return (
|
||||
<html lang="en">
|
||||
<body className={`${geistSans.variable} ${geistMono.variable} antialiased`}>
|
||||
<body>
|
||||
<ReactQueryProviders>{children}</ReactQueryProviders>
|
||||
<Footer />
|
||||
</body>
|
||||
|
||||
@ -23,11 +23,11 @@ export default function SurveySales() {
|
||||
store: 'HWJ(T01)',
|
||||
construction_point: 'HWJ(T01)',
|
||||
investigation_date: '2025-04-28',
|
||||
building_name: '한화재팬빌딩',
|
||||
building_name: 'Hanwha Japan Building',
|
||||
customer_name: 'Hong Gil Dong',
|
||||
post_code: '1050013',
|
||||
address: '서울특별시 강남구 테헤란로 14길 6 ',
|
||||
address_detail: '남도빌딩 2층',
|
||||
address: 'Tokyo, Japan',
|
||||
address_detail: '1-1-1',
|
||||
submission_status: false,
|
||||
}
|
||||
|
||||
@ -44,10 +44,10 @@ export default function SurveySales() {
|
||||
<button className="bg-blue-500 text-white px-4 py-2 rounded-md">조회</button>
|
||||
</div>
|
||||
</div>
|
||||
<div className="bg-orange-100 border-l-4 border-orange-500 text-orange-700 p-4 m-4" role="alert">
|
||||
{/* <div className="bg-orange-100 border-l-4 border-orange-500 text-orange-700 p-4 m-4" role="alert">
|
||||
<p className="font-bold">Be Warned</p>
|
||||
<p>기본 데이터 세팅 되어있습니다.</p>
|
||||
</div>
|
||||
</div> */}
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import { SessionData, sessionOptions } from './libs/session'
|
||||
export async function middleware(request: NextRequest) {
|
||||
const cookieStore = await cookies()
|
||||
const session = await getIronSession<SessionData>(cookieStore, sessionOptions)
|
||||
console.log('🚀 ~ middleware ~ session:', session)
|
||||
if (!session.isLoggedIn) {
|
||||
return NextResponse.redirect(new URL('/login', request.url))
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user