기능구현중
This commit is contained in:
52
server/api/vcs-server/create.post.ts
Normal file
52
server/api/vcs-server/create.post.ts
Normal file
@@ -0,0 +1,52 @@
|
||||
import { insertReturning } from '../../utils/db'
|
||||
import { getCurrentUserId } from '../../utils/user'
|
||||
|
||||
interface CreateBody {
|
||||
serverName: string
|
||||
serverType: string // git | svn
|
||||
serverUrl: string
|
||||
description?: string
|
||||
}
|
||||
|
||||
/**
|
||||
* VCS 서버 등록
|
||||
* POST /api/vcs-server/create
|
||||
*/
|
||||
export default defineEventHandler(async (event) => {
|
||||
const body = await readBody<CreateBody>(event)
|
||||
const userId = await getCurrentUserId(event)
|
||||
|
||||
if (!body.serverName?.trim()) {
|
||||
throw createError({ statusCode: 400, message: '서버명을 입력해주세요.' })
|
||||
}
|
||||
|
||||
if (!body.serverType || !['git', 'svn'].includes(body.serverType)) {
|
||||
throw createError({ statusCode: 400, message: '서버 유형을 선택해주세요 (git/svn).' })
|
||||
}
|
||||
|
||||
if (!body.serverUrl?.trim()) {
|
||||
throw createError({ statusCode: 400, message: '서버 URL을 입력해주세요.' })
|
||||
}
|
||||
|
||||
const result = await insertReturning(`
|
||||
INSERT INTO wr_vcs_server (server_name, server_type, server_url, description, is_active, created_by)
|
||||
VALUES ($1, $2, $3, $4, true, $5)
|
||||
RETURNING *
|
||||
`, [
|
||||
body.serverName.trim(),
|
||||
body.serverType,
|
||||
body.serverUrl.trim(),
|
||||
body.description || null,
|
||||
userId
|
||||
])
|
||||
|
||||
return {
|
||||
success: true,
|
||||
server: {
|
||||
serverId: result.server_id,
|
||||
serverName: result.server_name,
|
||||
serverType: result.server_type,
|
||||
serverUrl: result.server_url
|
||||
}
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user