fix: delete visit request test records
This commit is contained in:
@@ -154,7 +154,7 @@ export const DashboardPage: React.FC = () => {
|
||||
{deleting != null && (
|
||||
<Dialog
|
||||
title="출입신청 삭제"
|
||||
message={`${deleting.visitorName} / ${deleting.zoneName || '-'} 신청을 삭제합니다. 실제 입/퇴장 기록이 있는 신청은 삭제되지 않습니다. 계속하려면 "삭제"를 입력하세요.`}
|
||||
message={`${deleting.visitorName} / ${deleting.zoneName || '-'} 신청과 관련 테스트 기록을 함께 삭제합니다. 계속하려면 "삭제"를 입력하세요.`}
|
||||
withInput
|
||||
inputPlaceholder="삭제"
|
||||
confirmLabel="삭제"
|
||||
|
||||
@@ -146,7 +146,7 @@ export const VisitRequestListPage: React.FC = () => {
|
||||
{deleting != null && (
|
||||
<Dialog
|
||||
title="출입신청 삭제"
|
||||
message={`${deleting.visitorName} / ${deleting.zoneName || '-'} 신청을 삭제합니다. 실제 입/퇴장 기록이 있는 신청은 삭제되지 않습니다. 계속하려면 "삭제"를 입력하세요.`}
|
||||
message={`${deleting.visitorName} / ${deleting.zoneName || '-'} 신청과 관련 테스트 기록을 함께 삭제합니다. 계속하려면 "삭제"를 입력하세요.`}
|
||||
withInput
|
||||
inputPlaceholder="삭제"
|
||||
confirmLabel="삭제"
|
||||
|
||||
@@ -589,16 +589,9 @@ export function createBusinessRouter(deps: BusinessRouterDeps = { query }): Rout
|
||||
const visit = await visitById(dbQuery, id);
|
||||
if (!visit) throw new ApiError(404, '방문 신청을 찾을 수 없습니다.');
|
||||
|
||||
const events = await dbQuery<{ count: string }>(
|
||||
'SELECT count(*) AS count FROM access_events WHERE visit_request_id = $1',
|
||||
[id],
|
||||
);
|
||||
if (Number(events.rows[0]?.count ?? 0) > 0) {
|
||||
throw new ApiError(400, '실제 입/퇴장 기록이 있는 신청은 삭제할 수 없습니다.');
|
||||
}
|
||||
|
||||
await dbQuery('DELETE FROM pass_deliveries WHERE visit_request_id = $1', [id]);
|
||||
await dbQuery('DELETE FROM approvals WHERE visit_request_id = $1', [id]);
|
||||
await dbQuery('DELETE FROM access_events WHERE visit_request_id = $1', [id]);
|
||||
await dbQuery('DELETE FROM visit_requests WHERE id = $1', [id]);
|
||||
await dbQuery(
|
||||
`DELETE FROM visitors v
|
||||
|
||||
Reference in New Issue
Block a user