45 lines
1.5 KiB
TypeScript
45 lines
1.5 KiB
TypeScript
export const formatDate = (date: Date): string => {
|
|
if (!date) return '';
|
|
const year = date.getFullYear();
|
|
const month = String(date.getMonth() + 1).padStart(2, '0'); // 월은 0부터 시작하므로 +1
|
|
const day = String(date.getDate()).padStart(2, '0');
|
|
return `${year}-${month}-${day}`;
|
|
};
|
|
|
|
// 현재 년도부터 10년 전까지의 년도 옵션 생성
|
|
export const yearOptions = Array.from({ length: 10 }, (_, i) => {
|
|
const year = new Date().getFullYear() - i;
|
|
return { text: `${year}년`, val: year.toString() };
|
|
});
|
|
|
|
// 현재 날짜를 기준으로 현재 분기까지의 분기 옵션 생성
|
|
export const getQuarterOptions = (): { text: string; val: string }[] => {
|
|
const currentDate = new Date();
|
|
const currentMonth = currentDate.getMonth() + 1; // 0부터 시작하므로 +1
|
|
|
|
// 현재 월을 기준으로 현재 분기 계산
|
|
const currentQuarter = Math.ceil(currentMonth / 3);
|
|
|
|
// 현재 분기까지의 분기 옵션 생성
|
|
const quarterOptions = [];
|
|
for (let i = 1; i <= currentQuarter; i++) {
|
|
quarterOptions.push({
|
|
text: `${i}분기`,
|
|
val: i.toString()
|
|
});
|
|
}
|
|
|
|
return quarterOptions;
|
|
};
|
|
|
|
// ["202506", "202505", "202502", "202405"] 을 SelectBox의 옵션으로 변환
|
|
export const convertToTextValArray = (yyyymms: string[]): { text: string; val: string }[] => {
|
|
return yyyymms.map(dateStr => {
|
|
const year = dateStr.slice(0, 4);
|
|
const month = dateStr.slice(4, 6);
|
|
return {
|
|
text: `${year}-${month}`,
|
|
val: dateStr
|
|
};
|
|
});
|
|
}; |