89 lines
2.2 KiB
TypeScript
89 lines
2.2 KiB
TypeScript
|
|
import { supabase } from '../client';
|
|
|
|
/**
|
|
* 테이블 상태를 확인합니다.
|
|
*/
|
|
export const checkTablesStatus = async (): Promise<{
|
|
transactions: boolean;
|
|
budgets: boolean;
|
|
category_budgets: boolean;
|
|
}> => {
|
|
const tables = {
|
|
transactions: false,
|
|
budgets: false,
|
|
category_budgets: false
|
|
};
|
|
|
|
try {
|
|
// transactions 테이블 확인
|
|
const { data: transactionsData, error: transactionsError } = await supabase
|
|
.from('transactions')
|
|
.select('*', { count: 'exact', head: true });
|
|
|
|
tables.transactions = !transactionsError;
|
|
|
|
// budgets 테이블 확인
|
|
const { data: budgetsData, error: budgetsError } = await supabase
|
|
.from('budgets')
|
|
.select('*', { count: 'exact', head: true });
|
|
|
|
tables.budgets = !budgetsError;
|
|
|
|
// category_budgets 테이블 확인
|
|
const { data: categoryBudgetsData, error: categoryBudgetsError } = await supabase
|
|
.from('category_budgets')
|
|
.select('*', { count: 'exact', head: true });
|
|
|
|
tables.category_budgets = !categoryBudgetsError;
|
|
|
|
return tables;
|
|
} catch (error) {
|
|
console.error('테이블 상태 확인 중 오류 발생:', error);
|
|
return tables;
|
|
}
|
|
};
|
|
|
|
/**
|
|
* 기존 테이블 목록을 가져옵니다.
|
|
* 참고: get_tables 함수는 사용하지 않음
|
|
*/
|
|
export const getExistingTables = async (): Promise<string[] | null> => {
|
|
try {
|
|
const tables = [];
|
|
|
|
// 직접 각 테이블 확인
|
|
const { error: transactionsError } = await supabase
|
|
.from('transactions')
|
|
.select('id')
|
|
.limit(1);
|
|
|
|
if (!transactionsError) {
|
|
tables.push('transactions');
|
|
}
|
|
|
|
const { error: budgetsError } = await supabase
|
|
.from('budgets')
|
|
.select('id')
|
|
.limit(1);
|
|
|
|
if (!budgetsError) {
|
|
tables.push('budgets');
|
|
}
|
|
|
|
const { error: categoryBudgetsError } = await supabase
|
|
.from('category_budgets')
|
|
.select('id')
|
|
.limit(1);
|
|
|
|
if (!categoryBudgetsError) {
|
|
tables.push('category_budgets');
|
|
}
|
|
|
|
return tables;
|
|
} catch (error) {
|
|
console.error('테이블 목록 확인 중 오류 발생:', error);
|
|
return null;
|
|
}
|
|
};
|