File name
Commit message
Commit date
File name
Commit message
Commit date
09-03
File name
Commit message
Commit date
export interface PointAccount {
id: string;
memberNo: string;
loginId: string;
studentName: string;
schoolName: string;
grade: number;
classNo: number;
studentNo: number;
totalPoint: number;
deductedPoint: number;
usedPoint: number;
currentPoint: number;
updatedAt: string;
siteName: string;
}
export interface PointHistoryEntry {
id: string;
title: string;
point: number;
siteName: string;
date: string;
}
export const EMPTY_FIELD_PLACEHOLDER = '-';
export function formatOptionalValue(
value: string | number | null | undefined
): string {
return value === null || value === undefined || value === ''
? EMPTY_FIELD_PLACEHOLDER
: String(value);
}
export function formatPoint(value: number): string {
return value.toLocaleString('ko-KR');
}
/** 취득은 `+`, 사용은 `-`를 붙여 부호가 곧 방향이 되게 한다(기획 PTS10300001 ②). */
export function formatPointDelta(value: number): string {
const sign = value > 0 ? '+' : '';
return `${sign}${formatPoint(value)} P`;
}
export function isPointEarned(value: number): boolean {
return value > 0;
}
export function formatGradeClassNumber(account: PointAccount): string {
return `${account.grade}학년 ${account.classNo}반 ${account.studentNo}번`;
}