fix(tbm): "내 TBM 아님" 근본 수정 — currentUser 로드 + id 호환

- tbm-mobile.js: localStorage('sso_user') → getCurrentUser() 전환
- isMySession: currentUser.id도 비교 (tkfb-core가 id만 설정)
- tbm-create.js: leaderId fallback (allWorkers 미로드 대응 + String 비교)
- 마이그레이션: NULL leader_user_id → created_by로 복구

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-03-31 15:27:38 +09:00
parent b855ac973a
commit 242dca83b5
3 changed files with 8 additions and 4 deletions

View File

@@ -30,3 +30,5 @@ INSERT IGNORE INTO company_holidays (holiday_date, holiday_name, holiday_type, c
INSERT IGNORE INTO company_holidays (holiday_date, holiday_name, holiday_type, created_by) VALUES ('2026-10-03', '개천절', 'PAID', 1);
INSERT IGNORE INTO company_holidays (holiday_date, holiday_name, holiday_type, created_by) VALUES ('2026-10-09', '한글날', 'PAID', 1);
INSERT IGNORE INTO company_holidays (holiday_date, holiday_name, holiday_type, created_by) VALUES ('2026-12-25', '크리스마스', 'PAID', 1);
-- NULL leader_user_id 복구 (created_by로 채움)
UPDATE tbm_sessions SET leader_user_id = created_by WHERE leader_user_id IS NULL;

View File

@@ -41,12 +41,14 @@
W.sessionDate = window.TbmUtils.getTodayKST();
var user = window.TbmState.getUser();
if (user) {
if (user.user_id) {
var worker = window.TbmState.allWorkers.find(function(w) { return w.user_id === user.user_id; });
var uid = user.user_id || user.id;
if (uid) {
var worker = window.TbmState.allWorkers.find(function(w) { return String(w.user_id) === String(uid); });
if (worker) {
W.leaderId = worker.user_id;
W.leaderName = worker.worker_name;
} else {
W.leaderId = uid;
W.leaderName = user.name || '';
}
} else {

View File

@@ -64,7 +64,7 @@
return;
}
currentUser = JSON.parse(localStorage.getItem('sso_user') || '{}');
currentUser = (typeof getCurrentUser === 'function' ? getCurrentUser() : window.currentUser) || {};
await loadData();
});
@@ -125,7 +125,7 @@
function isMySession(s) {
var role = (currentUser.role || '').toLowerCase();
if (role === 'admin' || role === 'system' || role === 'support_team') return true;
var userId = currentUser.user_id;
var userId = currentUser.user_id || currentUser.id;
var userName = currentUser.name;
return (userId && (String(s.created_by) === String(userId) ||
String(s.leader_user_id) === String(userId))) ||