Add workplaceNumber field to user authentication and statistics API. Update frontend components and localization to support new field. Enhance user experience by displaying workplace information in relevant areas.
This commit is contained in:
@@ -604,18 +604,24 @@ router.get('/challenge/chain/:chainId/submissions', (req, res) => {
|
||||
filteredSubmissions.forEach(sub => {
|
||||
const subUserId = typeof sub.user === 'object' ? sub.user.id : sub.user;
|
||||
const subUserNickname = typeof sub.user === 'object' ? sub.user.nickname : '';
|
||||
const subUserWorkplaceNumber = typeof sub.user === 'object' ? sub.user.workplaceNumber : undefined;
|
||||
|
||||
// Найти nickname если не заполнен
|
||||
// Найти nickname и workplaceNumber если не заполнены
|
||||
let nickname = subUserNickname;
|
||||
if (!nickname) {
|
||||
let workplaceNumber = subUserWorkplaceNumber;
|
||||
if (!nickname || !workplaceNumber) {
|
||||
const user = users.find(u => u.id === subUserId);
|
||||
nickname = user ? user.nickname : subUserId;
|
||||
if (user) {
|
||||
nickname = nickname || user.nickname || subUserId;
|
||||
workplaceNumber = workplaceNumber || user.workplaceNumber;
|
||||
}
|
||||
}
|
||||
|
||||
if (!participantMap.has(subUserId)) {
|
||||
participantMap.set(subUserId, {
|
||||
userId: subUserId,
|
||||
nickname: nickname,
|
||||
workplaceNumber: workplaceNumber,
|
||||
completedTasks: new Set(),
|
||||
totalTasks: chain.tasks.length,
|
||||
});
|
||||
@@ -632,6 +638,7 @@ router.get('/challenge/chain/:chainId/submissions', (req, res) => {
|
||||
const participants = Array.from(participantMap.values()).map(p => ({
|
||||
userId: p.userId,
|
||||
nickname: p.nickname,
|
||||
workplaceNumber: p.workplaceNumber,
|
||||
completedTasks: p.completedTasks.size,
|
||||
totalTasks: p.totalTasks,
|
||||
progressPercent: p.totalTasks > 0
|
||||
|
||||
Reference in New Issue
Block a user