mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-08 11:30: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) {
|
export async function getSessionList(req, res) {
|
||||||
try {
|
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)
|
res.json(sessions)
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
console.error(err)
|
||||||
res.status(500).json({ message: err.message })
|
res.status(500).json({ message: err.message })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function createSession(req, res) {
|
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({
|
const newSession = new Session({
|
||||||
user: req.user,
|
user: req.user,
|
||||||
quest,
|
quest,
|
||||||
})
|
})
|
||||||
|
|
||||||
console.log(newSession)
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const session = await newSession.save()
|
const session = await newSession.save()
|
||||||
res.status(201).json(session)
|
res.status(201).json(session)
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ const Session = model(
|
|||||||
ref: 'User',
|
ref: 'User',
|
||||||
},
|
},
|
||||||
quest: {
|
quest: {
|
||||||
type: Schema.ObjectId,
|
type: String,
|
||||||
ref: 'Quest',
|
ref: 'Quest',
|
||||||
},
|
},
|
||||||
containerId: String,
|
containerId: String,
|
||||||
|
|||||||
Reference in new issue
Block a user