Expose notes route and running timers endpoint

This commit is contained in:
richardtekula
2025-12-04 07:41:31 +01:00
parent 35dfa07668
commit 7adb92503a
3 changed files with 24 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ import companyRoutes from './routes/company.routes.js';
import projectRoutes from './routes/project.routes.js'; import projectRoutes from './routes/project.routes.js';
import todoRoutes from './routes/todo.routes.js'; import todoRoutes from './routes/todo.routes.js';
import timeTrackingRoutes from './routes/time-tracking.routes.js'; import timeTrackingRoutes from './routes/time-tracking.routes.js';
import noteRoutes from './routes/note.routes.js';
const app = express(); const app = express();
@@ -82,6 +83,7 @@ app.use('/api/companies', companyRoutes);
app.use('/api/projects', projectRoutes); app.use('/api/projects', projectRoutes);
app.use('/api/todos', todoRoutes); app.use('/api/todos', todoRoutes);
app.use('/api/time-tracking', timeTrackingRoutes); app.use('/api/time-tracking', timeTrackingRoutes);
app.use('/api/notes', noteRoutes);
// Basic route // Basic route
app.get('/', (req, res) => { app.get('/', (req, res) => {

View File

@@ -32,6 +32,9 @@ router.post(
// Get running time entry // Get running time entry
router.get('/running', timeTrackingController.getRunningTimeEntry); router.get('/running', timeTrackingController.getRunningTimeEntry);
// Get all running time entries (for dashboard)
router.get('/running-all', timeTrackingController.getAllRunningTimeEntries);
// Get all time entries with filters // Get all time entries with filters
router.get('/', timeTrackingController.getAllTimeEntries); router.get('/', timeTrackingController.getAllTimeEntries);

View File

@@ -224,6 +224,25 @@ export const getRunningTimeEntry = async (userId) => {
return running || null; return running || null;
}; };
/**
* Get all running time entries (for dashboard)
*/
export const getAllRunningTimeEntries = async () => {
const result = await db
.select({
id: timeEntries.id,
userId: timeEntries.userId,
startTime: timeEntries.startTime,
firstName: users.firstName,
lastName: users.lastName,
})
.from(timeEntries)
.innerJoin(users, eq(timeEntries.userId, users.id))
.where(eq(timeEntries.isRunning, true));
return result;
};
/** /**
* Get time entry by ID * Get time entry by ID
*/ */