mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-05 19:20:12 +08:00
Create and get session list api
This commit is contained in:
1 parent
3e9e14399a
commit
43f54b4f93
2 files changed
+13
-5
No files matched your search
@@ -3,22 +3,30 @@ import Quest from '../../models/quest.js'
|
||||
|
||||
export async function getSessionList(req, res) {
|
||||
try {
|
||||
const sessions = await Session.find({ user: req.user.id })
|
||||
const query = { user: req.user.id }
|
||||
if (req.query.quest_id) {
|
||||
query.quest = req.query.quest_id
|
||||
}
|
||||
const sessions = await Session.find(query)
|
||||
res.json(sessions)
|
||||
} catch (err) {
|
||||
console.error(err)
|
||||
res.status(500).json({ message: err.message })
|
||||
}
|
||||
}
|
||||
|
||||
export async function createSession(req, res) {
|
||||
const quest = await Quest.findOne({ name: req.body.quest_name })
|
||||
const quest = await Quest.findById(req.body.quest_id)
|
||||
if (!quest) {
|
||||
res.status(400).json({ message: 'Quest not found.' })
|
||||
return
|
||||
}
|
||||
|
||||
const newSession = new Session({
|
||||
user: req.user,
|
||||
quest,
|
||||
})
|
||||
|
||||
console.log(newSession)
|
||||
|
||||
try {
|
||||
const session = await newSession.save()
|
||||
res.status(201).json(session)
|
||||
|
||||
@@ -9,7 +9,7 @@ const Session = model(
|
||||
ref: 'User',
|
||||
},
|
||||
quest: {
|
||||
type: Schema.ObjectId,
|
||||
type: String,
|
||||
ref: 'Quest',
|
||||
},
|
||||
containerId: String,
|
||||
|
||||
Reference in new issue
Block a user