기능구현중
This commit is contained in:
24
server/api/vcs-server/[id]/delete.delete.ts
Normal file
24
server/api/vcs-server/[id]/delete.delete.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
import { execute, queryOne, query } from '../../../utils/db'
|
||||
|
||||
/**
|
||||
* VCS 서버 삭제
|
||||
* DELETE /api/vcs-server/[id]/delete
|
||||
*/
|
||||
export default defineEventHandler(async (event) => {
|
||||
const serverId = Number(getRouterParam(event, 'id'))
|
||||
|
||||
const existing = await queryOne('SELECT * FROM wr_vcs_server WHERE server_id = $1', [serverId])
|
||||
if (!existing) {
|
||||
throw createError({ statusCode: 404, message: 'VCS 서버를 찾을 수 없습니다.' })
|
||||
}
|
||||
|
||||
// 연결된 계정이 있는지 확인
|
||||
const accounts = await query('SELECT COUNT(*) as cnt FROM wr_employee_vcs_account WHERE server_id = $1', [serverId])
|
||||
if (parseInt(accounts[0]?.cnt) > 0) {
|
||||
throw createError({ statusCode: 400, message: '연결된 VCS 계정이 있어 삭제할 수 없습니다. 먼저 계정을 삭제하거나 비활성화해주세요.' })
|
||||
}
|
||||
|
||||
await execute('DELETE FROM wr_vcs_server WHERE server_id = $1', [serverId])
|
||||
|
||||
return { success: true, message: 'VCS 서버가 삭제되었습니다.' }
|
||||
})
|
||||
Reference in New Issue
Block a user