124 lines
4.7 KiB
JavaScript
124 lines
4.7 KiB
JavaScript
|
const mymongodb = require('../../mongoIndex')
|
||
|
|
||
|
const crypto = require('crypto');
|
||
|
|
||
|
const AbiturControllerInterface = require('../../controllers/interfaces/abitur.controller.interface');
|
||
|
|
||
|
const { ObjectId } = require('mongodb');
|
||
|
|
||
|
class AbiturController extends AbiturControllerInterface{
|
||
|
|
||
|
async createAbitur(req, res) {
|
||
|
// const {first_name, last_name, middle_name, email, password} = req.body
|
||
|
|
||
|
// var hash = crypto.createHash('md5').update(password).digest('hex');
|
||
|
|
||
|
// const newAbitur = await db.query('INSERT INTO abitur (first_name, last_name, middle_name, email, password) VALUES ($1, $2, $3, $4, $5) RETURNING *', [first_name, last_name, middle_name, email, hash])
|
||
|
// res.json(newAbitur.rows[0])
|
||
|
|
||
|
const {first_name, last_name, middle_name, email, password} = req.body
|
||
|
|
||
|
var hash = crypto.createHash('md5').update(password).digest('hex')
|
||
|
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
|
||
|
const newAbitur = collection.insertOne({
|
||
|
first_name: first_name,
|
||
|
last_name: last_name,
|
||
|
middle_name: middle_name,
|
||
|
email: email,
|
||
|
password: hash
|
||
|
})
|
||
|
res.json({id: 1})
|
||
|
}
|
||
|
async createAbiturWithId(req, res) {
|
||
|
// const {id, first_name, last_name, middle_name, email, password} = req.body
|
||
|
|
||
|
// var hash = crypto.createHash('md5').update(password).digest('hex');
|
||
|
|
||
|
// const newAbitur = await db.query('INSERT INTO abitur (id, first_name, last_name, middle_name, email, password) VALUES ($1, $2, $3, $4, $5, $6) RETURNING *', [id, first_name, last_name, middle_name, email, hash])
|
||
|
// res.json(newAbitur.rows[0])
|
||
|
|
||
|
const {id, first_name, last_name, middle_name, email, password} = req.body
|
||
|
|
||
|
var hash = crypto.createHash('md5').update(password).digest('hex')
|
||
|
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
|
||
|
const newAbitur = await collection.insertOne({
|
||
|
_id: new ObjectId(id),
|
||
|
first_name: first_name,
|
||
|
last_name: last_name,
|
||
|
middle_name: middle_name,
|
||
|
email: email,
|
||
|
password: hash
|
||
|
})
|
||
|
|
||
|
if (newAbitur!=null) res.json({id: 1})
|
||
|
}
|
||
|
async getAbiturs(req, res) {
|
||
|
// const abiturs = await db.query('SELECT * FROM abitur')
|
||
|
// res.json(abiturs.rows)
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
const abiturs = await collection.find().toArray()
|
||
|
res.json(abiturs)
|
||
|
}
|
||
|
async getOneAbitur(req, res) {
|
||
|
// const id = req.params.id
|
||
|
// const abiturs = await db.query('SELECT * FROM abitur WHERE id=$1', [id])
|
||
|
// res.json(abiturs.rows[0])
|
||
|
const id = req.params.id
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
const abiturs = await collection.findOne({_id: new ObjectId(id)})
|
||
|
res.json(abiturs)
|
||
|
}
|
||
|
async authAbitur(req, res) {
|
||
|
// const {email, password} = req.body
|
||
|
// var hash = crypto.createHash('md5').update(password).digest('hex');
|
||
|
// const abitur = await db.query('SELECT * FROM abitur WHERE email = $1 AND password = $2', [email, hash])
|
||
|
// res.json(abitur.rows[0])
|
||
|
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
const {email, password} = req.body
|
||
|
var hash = crypto.createHash('md5').update(password).digest('hex')
|
||
|
|
||
|
const abitur = await collection.findOne({email: email, password: hash})
|
||
|
|
||
|
res.json(abitur)
|
||
|
}
|
||
|
async updateAbitur(req, res) {
|
||
|
// const {id, first_name, last_name, middle_name} = req.body
|
||
|
// const newAbitur = await db.query('UPDATE abitur SET first_name=$1, last_name=$2, middle_name=$3 WHERE id=$4 RETURNING *', [first_name, last_name, middle_name, id])
|
||
|
// res.json(newAbitur.rows[0])
|
||
|
|
||
|
const {id, first_name, last_name, middle_name} = req.body
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
await collection.findOneAndUpdate({_id: id}, {$set: {
|
||
|
first_name: first_name,
|
||
|
last_name: last_name,
|
||
|
middle_name: middle_name,
|
||
|
}})
|
||
|
res.json({id: 1})
|
||
|
}
|
||
|
async deleteAbitur(req, res) {
|
||
|
// const id = req.params.id
|
||
|
// const abiturs = await db.query('DELETE FROM abitur WHERE id=$1', [id])
|
||
|
// res.json(abiturs.rows[0])
|
||
|
|
||
|
const id = req.params.id
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
await collection.findOneAndDelete({_id: id})
|
||
|
res.json({id: 1})
|
||
|
|
||
|
}
|
||
|
async deleteAll(req, res) {
|
||
|
// const abiturs = await db.query('DELETE FROM abitur')
|
||
|
// res.json(abiturs.rows)
|
||
|
|
||
|
const collection = mymongodb.collection('abiturs')
|
||
|
await collection.drop()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
module.exports = new AbiturController()
|