ahora muestra tareas pero no las asigna bien porque tengo qeu encontrar la manera de tener como usuarios que son el número de teléfono y que los identifique bien y los ponga bien en el mensaje, poco a poco

main
brobert 3 months ago
parent 6feed9e940
commit dc3b2482f2

Binary file not shown.

@ -1,5 +1,5 @@
import { sendMessage } from '../utils/messaging';
import { createTask, assignTask, completeTask } from '../../services/taskService';
import { createTask, assignTask, completeTask, getPendingTasks } from '../../services/taskService';
export function handleTaskCommand(body: string, sender: string, groupId: string, linkedGroups: Set<string>) {
if (groupId && linkedGroups.has(groupId)) {
@ -35,8 +35,21 @@ export function handleTaskCommand(body: string, sender: string, groupId: string,
const taskId = args[0];
completeTask(parseInt(taskId));
sendMessage(sender, `Tarea ${taskId} marcada como completada`);
} else if (action === 'mostrar' || !action) {
// Handle /tarea or /tarea mostrar
const user = `@${sender.split('@')[0]}`; // Default to the sender
const tasks = getPendingTasks(user);
if (tasks.length === 0) {
sendMessage(sender, 'No tienes tareas pendientes.');
} else {
const taskList = tasks.map((task) => {
return `- Tarea ${task.id}: ${task.description}${task.dueDate ? ` (para el ${task.dueDate})` : ''}`;
}).join('\n');
sendMessage(sender, `Tus tareas pendientes:\n${taskList}`);
}
} else {
sendMessage(sender, 'Acción no reconocida. Usa /tarea nueva, /tarea asignar, o /tarea completar.');
sendMessage(sender, 'Acción no reconocida. Usa /tarea nueva, /tarea asignar, /tarea completar, o /tarea mostrar.');
}
}
}

@ -34,7 +34,7 @@ export async function fetchGroups(communityId: string): Promise<Set<string>> {
// Save the group to the database
execute(
'INSERT OR REPLACE INTO groups (id, name, linked_parent) VALUES (?, ?, ?)',
[group.id, group.name || 'Unnamed Group', group.linkedParent] // Provide a default name if missing
[group.id, group.subject || 'Unnamed Group', group.linkedParent] // Provide a default name if missing
);
}
}

@ -7,7 +7,7 @@ export function createTask(sender: string, description: string, assignedTo?: str
[description, assignedTo || null, dueDate || null, false]
);
const taskId = result.lastInsertRowId;
const taskId = result.lastInsertRowid;
return {
id: taskId,
description,
@ -37,3 +37,11 @@ export function completeTask(taskId: number) {
export function getTasks() {
return query('SELECT * FROM tasks');
}
// Get pending tasks for a specific user
export function getPendingTasks(assignedTo: string) {
return query(
'SELECT * FROM tasks WHERE assigned_to = ? AND completed = FALSE',
[assignedTo]
);
}

Loading…
Cancel
Save