Fix task due date not saving correctly to a future date

Add console logging to client and server to debug and fix an issue where task due dates were not being saved correctly, defaulting to the current date instead of the selected future date.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/xi95nEa
This commit is contained in:
michaelschal committed 2025-08-19 06:57:42 +00:00
1 parent c8b76c8b2e
commit 87cc2a0f88
4 files changed
+93 -2

No files matched your search

+33
View File
@@ -1390,6 +1390,14 @@ export async function registerRoutes(app: Express): Promise<Server> {
createdBy: user.id,
};
console.log('📝 POST /api/tasks - Received data:', {
originalBody: req.body,
processedData: data,
dueDate: data.dueDate,
dueDateType: typeof data.dueDate,
dueDateValue: data.dueDate
});
// Check if user has access to the group
if (user.role !== 'admin') {
const userGroupIds = user.userGroups.map(ug => ug.groupId);
@@ -1399,6 +1407,12 @@ export async function registerRoutes(app: Express): Promise<Server> {
}
const task = await storage.createTask(data);
console.log('✅ Task created:', {
id: task.id,
title: task.title,
dueDate: task.dueDate,
dueDateType: typeof task.dueDate
});
res.json(task);
} catch (error) {
console.error("Error creating task:", error);
@@ -1420,6 +1434,19 @@ export async function registerRoutes(app: Express): Promise<Server> {
return res.status(404).json({ message: "Task not found" });
}
console.log('🔄 PUT /api/tasks/:id - Received data:', {
taskId: id,
originalTask: {
id: task.id,
title: task.title,
dueDate: task.dueDate,
dueDateType: typeof task.dueDate
},
updateBody: req.body,
newDueDate: req.body.dueDate,
newDueDateType: typeof req.body.dueDate
});
// Check permissions
if (user.role !== 'admin') {
const userGroupIds = user.userGroups.map(ug => ug.groupId);
@@ -1429,6 +1456,12 @@ export async function registerRoutes(app: Express): Promise<Server> {
}
const updatedTask = await storage.updateTask(id, req.body);
console.log('✅ Task updated:', {
id: updatedTask.id,
title: updatedTask.title,
dueDate: updatedTask.dueDate,
dueDateType: typeof updatedTask.dueDate
});
res.json(updatedTask);
} catch (error) {
console.error("Error updating task:", error);
+31
View File
@@ -1622,16 +1622,47 @@ export class DatabaseStorage implements IStorage {
}
async createTask(taskData: InsertTask): Promise<Task> {
console.log('💾 DatabaseStorage.createTask - Input:', {
taskData,
dueDate: taskData.dueDate,
dueDateType: typeof taskData.dueDate,
dueDateISO: taskData.dueDate instanceof Date ? taskData.dueDate.toISOString() : taskData.dueDate
});
const [task] = await db.insert(tasks).values(taskData).returning();
console.log('💾 DatabaseStorage.createTask - Result:', {
taskId: task.id,
title: task.title,
dueDate: task.dueDate,
dueDateType: typeof task.dueDate
});
return task;
}
async updateTask(id: number, taskData: Partial<InsertTask>): Promise<Task> {
console.log('💾 DatabaseStorage.updateTask - Input:', {
taskId: id,
taskData,
dueDate: taskData.dueDate,
dueDateType: typeof taskData.dueDate,
dueDateISO: taskData.dueDate instanceof Date ? taskData.dueDate.toISOString() : taskData.dueDate
});
const [task] = await db
.update(tasks)
.set({ ...taskData, updatedAt: new Date() })
.where(eq(tasks.id, id))
.returning();
console.log('💾 DatabaseStorage.updateTask - Result:', {
taskId: task.id,
title: task.title,
dueDate: task.dueDate,
dueDateType: typeof task.dueDate
});
return task;
}