From f3e09a1775efba16950ff09702e2458c63f8b2e4 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Mon, 12 Jul 2021 08:49:47 -0500 Subject: [PATCH] Add general data endpoint --- server.js | 59 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 51 insertions(+), 8 deletions(-) diff --git a/server.js b/server.js index 121956f..3c21d76 100644 --- a/server.js +++ b/server.js @@ -45,16 +45,59 @@ new Pool({ port: 5432, }) -app.get('/hello',(req,res)=>{ - db.query('select * from users') +function CleanUp(arr,vals){ + return arr.map((arrVal)=>{ + vals.forEach((val)=>{ + arrVal[val]=undefined + }) + return arrVal + }) +} + +app.get('/data',(req,res)=>{ + var finalresult = {} + db.query('select * from potential_data inner join potential on potential_data.potential_id=potential.id') + .then((data)=>{ + finalresult["potential_data"]=data.rows + return db.query('select *,weapon.name as weapon,potential.name as potential,weapon_type.name as weapon_type from weapon_existence_data inner join weapon on weapon_existence_data.weapon_id=weapon.id inner join potential on potential.id=weapon.potential_id inner join weapon_type on weapon_type.id=weapon_existence_data.weapon_type_id') + }) + .then((data)=>{ + finalresult["weapon_existence_data"]=CleanUp(data.rows,["id","name","potential_id","weapon_type_id","weapon_id"]) + return db.query('select *,weapon_type.name as weapon_type,class.name as class from class_weapon_type_data inner join weapon_type on weapon_type.id=class_weapon_type_data.weapon_type_id inner join class on class.id=class_weapon_type_data.class_id') + }) + .then((data)=>{ + finalresult["class_weapon_type_data"]=CleanUp(data.rows,["id","name","class_id","weapon_type_id"]) + return db.query('select *,class.name as class from class_level_data inner join class on class.id=class_level_data.class_id') + }) + .then((data)=>{ + finalresult["class_level_data"]=CleanUp(data.rows,["id","class_id","name"]) + return db.query('select *,class.name as class2 from (select *,class.name as class1 from builds inner join users on users.id=builds.user_id inner join class on class.id=builds.class1)t inner join class on class.id=t.class2') + }) + .then((data)=>{ + finalresult["builds"]=CleanUp(data.rows,["id","user_id","username","email","password_hash","created_on","role_id","name"]) + return db.query('select *,skill.name as skill_name,skill_type.name as skill_type_name from skill_data inner join skill on skill.id=skill_data.skill_id inner join skill_type on skill.skill_type_id=skill_type.id') + }) + .then((data)=>{ + finalresult["skill_data"]=CleanUp(data.rows,["id","name","skill_type_id","skill_id"]) + return db.query('select *,augment_type.name as augment_type from augment inner join augment_type on augment_type.id=augment.augment_type_id') + }) .then((data)=>{ - res.status(200).json(data.rows) + finalresult["augment"]=CleanUp(data.rows,["id","name","augment_type_id"]) + return db.query('select * from armor') + }) + .then((data)=>{ + finalresult["armor"]=data.rows + return db.query('select * from food') + }) + .then((data)=>{ + finalresult["food"]=data.rows + return db.query('select * from food_mult') + }) + .then((data)=>{ + finalresult["food_mult"]=data.rows + res.status(200).json(finalresult) }) .catch((err)=>{ - res.status(500).send(err.message) + res.status(500).send(err.message); }) -}) - -app.get('/ngsplanner',(req,res)=>{ - res.status(200).send("Hello World! This is me."); }) \ No newline at end of file