Cantilever-Labs/controllers/query.js

91 lines
2.0 KiB
JavaScript
Raw Normal View History

const Query = require('../models/query') ;
module.exports.addQuery = async (req , res , next)=> {
try
{
let firstName = req.body.firstName || " " ;
let lastName = req.body.lastName || " " ;
let email = req.body.email ;
let query = req.body.query || " " ;
let other = req.body.other || false ;
let queryModel = await Query.findOne({email:email , query:query}) ;
if(queryModel)
{
if(!queryModel.numAsked)
{
queryModel.numAsked = 0 ;
}
queryModel.numAsked = queryModel.numAsked + 1 ;
await queryModel.save() ;
}
else
{
queryModel = new Query ({
firstName : firstName ,
lastName : lastName ,
email : email,
query : query ,
numAsked : 1 ,
other : other
}) ;
await queryModel.save() ;
}
res.json({
message : "Saved Query"
}) ;
}
catch(err)
{
res.json({
error : err
}) ;
}
}
module.exports.getQueries = async (req , res , next) => {
try
{
const queries = await Query.find() ;
res.json({
queries : queries
})
}
catch(err)
{
res.json({
error : err
})
}
}
module.exports.getOtherQueries = async (req , res , next) => {
try{
const queries = await Query.find({other : true}) ;
res.json({
queries : queries
})
}
catch(err){
res.json({
error : err
})
}
}
module.exports.getTypeQueries = async (req , res , next) => {
try{
const type = req.body.type ;
const queries = await Query.find({type:type}) ;
res.json({
queries : queries
})
}
catch(err)
{
res.json({
error:err
})
}
}