должность
This commit is contained in:
47
public/ui.js
47
public/ui.js
@@ -670,6 +670,20 @@ async function selectTaskType(type) {
|
||||
// Для типа "document" перезагружаем пользователей с фильтрацией
|
||||
if (type === 'document') {
|
||||
await reloadUsersForDocumentType();
|
||||
} else if (type === 'it') {
|
||||
await reloadUsersForType('ИТ специалист');
|
||||
} else if (type === 'ahch') {
|
||||
await reloadUsersForType('АХЧ');
|
||||
} else if (type === 'psychologist') {
|
||||
await reloadUsersForType('психолог');
|
||||
} else if (type === 'speech_therapist') {
|
||||
await reloadUsersForType('логопед');
|
||||
} else if (type === 'hr') {
|
||||
await reloadUsersForType('кадровичка');
|
||||
} else if (type === 'certificate') {
|
||||
await reloadUsersForType('Администрация');
|
||||
} else if (type === 'e_journal') {
|
||||
await reloadUsersForType('Админ ЭЖ');
|
||||
} else {
|
||||
// Для других типов перезагружаем обычных пользователей
|
||||
await loadUsers();
|
||||
@@ -705,6 +719,38 @@ async function reloadUsersForDocumentType() {
|
||||
console.error('Ошибка загрузки секретарей:', error);
|
||||
}
|
||||
}
|
||||
// функция для перезагрузки пользователей для типа "в переменной"
|
||||
async function reloadUsersForType(TypegroupName) {
|
||||
try {
|
||||
const response = await fetch('/api/users');
|
||||
const allUsersData = await response.json();
|
||||
|
||||
const TypegroupUsers = [];
|
||||
for (const user of allUsersData) {
|
||||
if (user.id === currentUser.id) continue;
|
||||
|
||||
const groups = await getUserGroups(user.id);
|
||||
const hasTargetGroup = groups.some(group =>
|
||||
group.name === TypegroupName ||
|
||||
(typeof group === 'string' && group.includes(TypegroupName))
|
||||
);
|
||||
|
||||
if (hasTargetGroup) {
|
||||
TypegroupUsers.push(user);
|
||||
}
|
||||
}
|
||||
|
||||
users = TypegroupUsers;
|
||||
filteredUsers = [...users];
|
||||
renderUsersChecklist();
|
||||
|
||||
return filteredUsers;
|
||||
|
||||
} catch (error) {
|
||||
console.error(`Ошибка загрузки пользователей группы "${TypegroupName}":`, error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
// Используем кэширование, чтобы не делать лишние запросы
|
||||
async function getUserGroups(userId) {
|
||||
// Используем кэширование, чтобы не делать лишние запросы
|
||||
@@ -1311,7 +1357,6 @@ function closeManageAssigneesModal() {
|
||||
}
|
||||
}
|
||||
|
||||
// Обновленная функция рендеринга файлов с группировкой по пользователям
|
||||
// Обновленная функция рендеринга файлов с группировкой по пользователям
|
||||
function renderGroupedFiles(task) {
|
||||
if (!task.files || task.files.length === 0) {
|
||||
|
||||
Reference in New Issue
Block a user