simplify: toggle adminMode, canAdminMode flag, remove getOrCreateCompany fallback
- ui/index.js: canAdminMode = isAdmin AND WZ01112 (временно || WZ01112) - views/index.ejs: checkbox → toggle с JS fetch, условие canAdminMode - ui/routes/entries.js: убран getOrCreateCompany-фоллбек для админа - Админ без ?company= видит список компаний, без автозагрузки - isAdmin теперь чисто из IAM (без || WZ01112)
This commit is contained in:
+10
-22
@@ -83,29 +83,17 @@ function createRouter() {
|
||||
|
||||
const companyId = req.query.company ? parseInt(req.query.company, 10) : null;
|
||||
|
||||
if (!companyId) {
|
||||
// Админ без ?company= — показываем свою компанию
|
||||
let ownCo = companies.find(c => c.client_id === req.user.clientId) || null;
|
||||
if (!ownCo) {
|
||||
await api.get('/api/v1/entries', token); // создаст компанию через getOrCreateCompany
|
||||
const cr2 = await api.get('/api/v1/companies', token);
|
||||
ownCo = (cr2.data.companies || []).find(c => c.client_id === req.user.clientId) || null;
|
||||
}
|
||||
if (ownCo) {
|
||||
const includeDeleted = req.query.includeDeleted === 'true' ? '&includeDeleted=true' : '';
|
||||
const er = await api.get('/api/v1/entries?company=' + ownCo.id + includeDeleted, token);
|
||||
entries = er.data.entries || [];
|
||||
limit = er.data.limit || 15;
|
||||
selectedCompany = ownCo;
|
||||
}
|
||||
} else {
|
||||
if (companyId) {
|
||||
selectedCompany = companies.find(c => c.id === companyId) || null;
|
||||
if (selectedCompany) {
|
||||
const includeDeleted = req.query.includeDeleted === 'true' ? '&includeDeleted=true' : '';
|
||||
const er = await api.get('/api/v1/entries?company=' + companyId + includeDeleted, token);
|
||||
entries = er.data.entries || [];
|
||||
limit = er.data.limit || 15;
|
||||
}
|
||||
}
|
||||
// Если компания не выбрана — показываем список компаний, без записей
|
||||
// (админ выбирает компанию из выпадающего списка)
|
||||
|
||||
if (selectedCompany) {
|
||||
const includeDeleted = req.query.includeDeleted === 'true' ? '&includeDeleted=true' : '';
|
||||
const er = await api.get('/api/v1/entries?company=' + selectedCompany.id + includeDeleted, token);
|
||||
entries = er.data.entries || [];
|
||||
limit = er.data.limit || 15;
|
||||
}
|
||||
} else {
|
||||
// Обычный пользователь: запрашиваем записи для активной компании
|
||||
|
||||
Reference in New Issue
Block a user