resolved conflicts

This commit is contained in:
2025-07-04 16:58:36 +02:00
3 changed files with 69 additions and 62 deletions

1
backend/.gitignore vendored
View File

@@ -1,3 +1,4 @@
node_modules node_modules
local.db local.db
drizzle drizzle
bun.lockb

View File

@@ -18,119 +18,124 @@ app.use(cors())
app.use(express.json()); app.use(express.json());
app.get('/', (req, res) => { app.get('/', (req, res) => {
res.send('Hello World'); res.send('Hello World');
}); });
app.get('/tasks', async (req, res) => { app.get('/tasks', async (req, res) => {
const tasks: typeof task.$inferSelect[] = await db.select().from(task) const tasks: typeof task.$inferSelect[] = await db.select().from(task)
res.send(tasks.map<TaskResponse>(task => { res.status(200).send(tasks.map<TaskResponse>(task => {
return { ...task, done: task.done === 1 } return { ...task, done: task.done === 1 }
})); }));
}); });
app.get('/events', async (req, res) => { app.get('/events', async(req, res) => {
res.send(await db.select().from(event)) res.status(200).send(await db.select().from(event))
}); });
app.get('/user/:id', (req, res) => { app.get('/user/:id', (req, res) => {
const id = req.params['id']; const id = req.params['id'];
if (id == null) { if (id == null) {
res.status(400).send({ error: 'Needs an user id' }); res.status(400).send({error: 'Needs an user id'});
return; return;
} }
const user = { id: id, name: 'Cracker' } //TODO const user = {id: id, name: 'Cracker'} //TODO
res.json(user); res.json(user);
}); });
app.get('/task/:id', async (req, res) => { app.get('/task/:id', async(req, res) => {
const id = parseInt(req.params['id']); const id = parseInt(req.params['id']);
if (id == null) { if (id == null) {
res.status(400).send({ error: 'Needs an id' }); res.status(400).send({error: 'Needs an id'});
return; return;
} }
const returnedTask = await db.select().from(task).where(eq(task.id, id)) const returnedTask = await db.select().from(task).where(eq(task.id, id))
// //
console.log(returnedTask) console.log(returnedTask)
res.json(returnedTask); res.json(returnedTask);
}); });
app.get('/event/:id', (req, res) => { app.get('/event/:id', (req, res) => {
const id = req.params['id']; const id = req.params['id'];
if (id == null) { if (id == null) {
res.status(400).send({ error: 'Needs an id' }); res.status(400).send({error: 'Needs an id'});
return; return;
} }
const event = { id: id, name: 'Pary' } //TODO const event = {id: id, name: 'Pary'} //TODO
res.json(event); res.json(event);
}); });
app.post('/task', async (req, res) => { app.post('/task', async(req, res) => {
const newTask = req.body const newTask = req.body
newTask.userid = userId newTask.userid = userId
const returnedTask = await db.insert(task).values(newTask).returning() const returnedTask = await db.insert(task).values(newTask).returning()
console.log(returnedTask) console.log(returnedTask)
res.status(201).json(returnedTask); res.status(201).json(returnedTask);
}); });
app.post('/event', async (req, res) => { app.post('/event', async(req, res) => {
const newEvent: typeof event.$inferInsert = req.body const newEvent: typeof event.$inferInsert = req.body
newEvent.description = "" newEvent.userid = userId
newEvent.userid = userId
const returnedEvent = await db.insert(event).values(newEvent).returning() const returnedEvent = await db.insert(event).values(newEvent).returning()
console.log(returnedEvent) console.log(returnedEvent)
res.status(201).json(returnedEvent); res.status(201).json(returnedEvent);
}); });
app.put('/task', (req, res) => { app.put('/task', (req, res) => {
const updatedTask = req.body; const id = parseInt(req.params['id']);
const updatedTask: Partial<typeof task.$inferSelect> = req.body
//Validate (having id) if (id == null) {
res.status(400).send({error: 'Needs an id'});
return;
}
db.update(task).set(updatedTask).where(eq(task.id, id))
//const updatedTaskWithId = db.updateTask(updatedTask) res.status(200).json(updatedTask);
res.status(200).json(updatedTask);
}); });
app.put('/event', (req, res) => { app.put('/event', (req, res) => {
const updatedEvent = req.body;
//Validate (having id) const id = parseInt(req.params['id']);
const updatedEvent: Partial<typeof event.$inferSelect> = req.body
//const updatedEventWithId = db.updateEvent(updatedEvent) if (id == null) {
res.status(400).send({error: 'Needs an id'});
return;
}
db.update(event).set(updatedEvent).where(eq(event.id, id))
res.status(200).json(updatedEvent); res.status(200).json(updatedEvent);});
app.delete('/task/:id', async(req, res) => {
const id = parseInt(req.params['id']);
const success = await db.delete(task).where(eq(task.id, id))
res.send("Deleted");
}); });
app.delete('/task/:id', async (req, res) => { app.delete('/event/:id', async(req, res) => {
const id = parseInt(req.params['id']); const id = parseInt(req.params['id']);
const success = await db.delete(task).where(eq(task.id, id)) const success = await db.delete(event).where(eq(event.id, id))
res.send("Deleted"); res.send("Deleted");
});
app.delete('/event/:id', async (req, res) => {
const id = parseInt(req.params['id']);
const success = await db.delete(event).where(eq(event.id, id))
res.send("Deleted");
}); });
app.listen(8080, () => { app.listen(8080, () => {
console.log('Listening on port 8080'); console.log('Listening on port 8080');
}); });

1
web/.gitignore vendored
View File

@@ -25,3 +25,4 @@ logs
# bun # bun
package-lock.json package-lock.json
bun.lockb