38 lines
1.2 KiB
TypeScript
38 lines
1.2 KiB
TypeScript
|
|
import { supabase } from '../client';
|
|
import { checkTablesStatus } from './status';
|
|
|
|
/**
|
|
* Supabase 데이터베이스에 필요한 테이블이 있는지 확인합니다.
|
|
* 이 함수는 로그인 후 실행되어야 합니다.
|
|
*/
|
|
export const createRequiredTables = async (): Promise<{ success: boolean; message: string }> => {
|
|
try {
|
|
console.log('데이터베이스 테이블 확인 시작...');
|
|
|
|
// 테이블 상태 확인
|
|
const tablesStatus = await checkTablesStatus();
|
|
|
|
if (tablesStatus.transactions && tablesStatus.budgets && tablesStatus.category_budgets) {
|
|
return {
|
|
success: true,
|
|
message: '필요한 테이블이 이미 존재합니다.'
|
|
};
|
|
}
|
|
|
|
return {
|
|
success: false,
|
|
message: '일부 필요한 테이블이 없습니다. Supabase 대시보드에서 확인해주세요.'
|
|
};
|
|
} catch (error: any) {
|
|
console.error('테이블 확인 중 오류 발생:', error);
|
|
return {
|
|
success: false,
|
|
message: `테이블 확인 실패: ${error.message || '알 수 없는 오류'}`
|
|
};
|
|
}
|
|
};
|
|
|
|
// 기존 checkTablesStatus 함수 내보내기
|
|
export { checkTablesStatus };
|