fix: Asia/Seoul 타임존 지원을 위해 luxon 라이브러리 도입

- backend/routes/todos.js: 오늘의 할일 조회 시 KST 기준으로 날짜 계산
- backend/routes/schedules.js: 주간/월간 일정 조회 시 KST 기준으로 날짜 범위 계산
- backend/routes/bible.js: 오늘의 성경 구절 조회 시 KST 기준으로 날짜 계산
- flutter_app: Mock 데이터 사용 시 타임존 관련 주석 추가
This commit is contained in:
kihong.kim
2026-02-01 01:21:14 +09:00
parent bde2fc14c7
commit 32e67bfcc2
6 changed files with 54 additions and 33 deletions

View File

@@ -1,8 +1,12 @@
const express = require("express");
const { DateTime } = require("luxon");
const BibleVerse = require("../models/BibleVerse");
const router = express.Router();
// Korea Standard Time zone
const KST_TIMEZONE = "Asia/Seoul";
const pickRandomVerse = async (filter) => {
const results = await BibleVerse.aggregate([
{ $match: filter },
@@ -13,7 +17,9 @@ const pickRandomVerse = async (filter) => {
router.get("/today", async (req, res) => {
try {
const targetDate = req.query.date || new Date().toISOString().slice(0, 10);
// Get today's date in KST (YYYY-MM-DD format)
const todayKst = DateTime.now().setZone(KST_TIMEZONE).toISODate();
const targetDate = req.query.date || todayKst;
const datedVerse = await pickRandomVerse({
active: true,
date: targetDate,