feat: gestione gruppi di ticket. feat: miglioramento filtri ticket a mio carico e ticket. feat: possiblità di copiare il numero del tocket con pulsante copia
This commit is contained in:
+45
-6
@@ -123,8 +123,21 @@ router.get('/', async (req, res) => {
|
||||
}
|
||||
|
||||
if (queue_id) {
|
||||
conditions.push(`t.queue_id = $${paramIdx++}`);
|
||||
params.push(parseInt(queue_id));
|
||||
let queueIds = [];
|
||||
if (Array.isArray(queue_id)) {
|
||||
queueIds = queue_id.map(id => parseInt(id)).filter(id => !isNaN(id));
|
||||
} else if (typeof queue_id === 'string') {
|
||||
queueIds = queue_id.split(',').map(id => parseInt(id.trim())).filter(id => !isNaN(id));
|
||||
} else {
|
||||
const parsed = parseInt(queue_id);
|
||||
if (!isNaN(parsed)) queueIds.push(parsed);
|
||||
}
|
||||
|
||||
if (queueIds.length > 0) {
|
||||
const placeholders = queueIds.map(() => `$${paramIdx++}`).join(', ');
|
||||
conditions.push(`t.queue_id IN (${placeholders})`);
|
||||
params.push(...queueIds);
|
||||
}
|
||||
}
|
||||
if (state_id) {
|
||||
let stateIds = [];
|
||||
@@ -144,12 +157,38 @@ router.get('/', async (req, res) => {
|
||||
}
|
||||
}
|
||||
if (priority_id) {
|
||||
conditions.push(`t.ticket_priority_id = $${paramIdx++}`);
|
||||
params.push(parseInt(priority_id));
|
||||
let priorityIds = [];
|
||||
if (Array.isArray(priority_id)) {
|
||||
priorityIds = priority_id.map(id => parseInt(id)).filter(id => !isNaN(id));
|
||||
} else if (typeof priority_id === 'string') {
|
||||
priorityIds = priority_id.split(',').map(id => parseInt(id.trim())).filter(id => !isNaN(id));
|
||||
} else {
|
||||
const parsed = parseInt(priority_id);
|
||||
if (!isNaN(parsed)) priorityIds.push(parsed);
|
||||
}
|
||||
|
||||
if (priorityIds.length > 0) {
|
||||
const placeholders = priorityIds.map(() => `$${paramIdx++}`).join(', ');
|
||||
conditions.push(`t.ticket_priority_id IN (${placeholders})`);
|
||||
params.push(...priorityIds);
|
||||
}
|
||||
}
|
||||
if (user_id) {
|
||||
conditions.push(`t.user_id = $${paramIdx++}`);
|
||||
params.push(parseInt(user_id));
|
||||
let userIds = [];
|
||||
if (Array.isArray(user_id)) {
|
||||
userIds = user_id.map(id => parseInt(id)).filter(id => !isNaN(id));
|
||||
} else if (typeof user_id === 'string') {
|
||||
userIds = user_id.split(',').map(id => parseInt(id.trim())).filter(id => !isNaN(id));
|
||||
} else {
|
||||
const parsed = parseInt(user_id);
|
||||
if (!isNaN(parsed)) userIds.push(parsed);
|
||||
}
|
||||
|
||||
if (userIds.length > 0) {
|
||||
const placeholders = userIds.map(() => `$${paramIdx++}`).join(', ');
|
||||
conditions.push(`t.user_id IN (${placeholders})`);
|
||||
params.push(...userIds);
|
||||
}
|
||||
}
|
||||
if (type_id) {
|
||||
conditions.push(`t.type_id = $${paramIdx++}`);
|
||||
|
||||
Reference in New Issue
Block a user