Projektsuche Implementiert mit anbindung an INFRA
This commit is contained in:
42
routes/project-search-routes.js
Normal file
42
routes/project-search-routes.js
Normal file
@@ -0,0 +1,42 @@
|
||||
const { requireAuth } = require('../middleware/auth');
|
||||
const { searchProjectsByDescription } = require('../services/mssql-infra-service');
|
||||
|
||||
function registerProjectSearchRoutes(app) {
|
||||
// Seite für Projektsuche – für alle eingeloggten Nutzer
|
||||
app.get('/projects/search', requireAuth, (req, res) => {
|
||||
res.render('project-search', {
|
||||
user: {
|
||||
id: req.session.userId,
|
||||
firstname: req.session.firstname,
|
||||
lastname: req.session.lastname,
|
||||
username: req.session.username,
|
||||
roles: req.session.roles || [],
|
||||
currentRole: req.session.currentRole || 'mitarbeiter'
|
||||
},
|
||||
error: null
|
||||
});
|
||||
});
|
||||
|
||||
// API-Endpunkt für Projektsuche über MSSQL
|
||||
app.get('/api/projects/search', requireAuth, async (req, res) => {
|
||||
const term = (req.query.term || '').trim();
|
||||
|
||||
if (!term) {
|
||||
return res.status(400).json({ error: 'Suchbegriff fehlt' });
|
||||
}
|
||||
|
||||
try {
|
||||
const results = await searchProjectsByDescription(term);
|
||||
res.json({ results });
|
||||
} catch (err) {
|
||||
console.error('Fehler bei MSSQL-Projektsuche:', err.message);
|
||||
return res.status(500).json({
|
||||
error:
|
||||
'Projektsuche ist aktuell nicht verfügbar. Bitte prüfen Sie die MSSQL-Konfiguration im Adminbereich oder versuchen Sie es später erneut.'
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = registerProjectSearchRoutes;
|
||||
|
||||
Reference in New Issue
Block a user