From 8ebfae3dfcf07cde0bf260e6d258f51d4f92d43f Mon Sep 17 00:00:00 2001 From: Khaldoon Sinjab Date: Sun, 27 Sep 2020 00:18:40 +0400 Subject: [PATCH] Added NGO inventory to backend --- .DS_Store | Bin 6148 -> 6148 bytes server.js | 322 +++++++++++++++++++++++++++++------------------------- 2 files changed, 174 insertions(+), 148 deletions(-) mode change 100644 => 100755 server.js diff --git a/.DS_Store b/.DS_Store index 6a222d3a1e8376f4de40d98fa4698db855945bb1..a33712155716d4db9e28aecfb107d9d2ad057757 100644 GIT binary patch delta 484 zcmZ9Jze~eF9L3*VDh;(It(4j#Qgsr+P+eRVkx~#TbaAym4Aq!u5_NN`yX6MEI|(kD zP5&h~2S3M>QNSJC0vr&OXv<$Y%-Ux_k2ceZjsIt)t5V4Y2pI!=(j|y`fkKNm`$bL z$Bf{2?4|vrL<*$4NyU{9^n9JAHfY delta 118 zcmZoMXfc=|#>B)qu~2NHo+2ab#(>?7jI5J+SfnRsvRX{u&mu7SGpmlg#(ywi00B;h zAO=?kM+O%LUm&f=kjs!VIe^V!@)H)p&0-vaEE5}EZ)WG<=Kz|zS&-v9^JIPzM-Gri NMg|6!%@HDNm;umh9{m6S diff --git a/server.js b/server.js old mode 100644 new mode 100755 index 02c579d3..5da46e04 --- a/server.js +++ b/server.js @@ -45,7 +45,7 @@ let connStr = //Maps APIs app.post("/getFamilyLatLng", function (request, response) { - + let ngoid = request.body.NGOId; ibmdb.open(connStr, function (err, conn) { if (err) { @@ -54,17 +54,17 @@ app.post("/getFamilyLatLng", function (request, response) { conn.query( ` SELECT A.NO_OF_PACKAGES, B."Family_id", B."Lat", B."Long" FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION A INNER JOIN `+ - process.env.DB_SCHEMA + - `.USERS C ON C.ID = A.USER_ID + process.env.DB_SCHEMA + + `.TRANSACTION A INNER JOIN ` + + process.env.DB_SCHEMA + + `.USERS C ON C.ID = A.USER_ID INNER JOIN `+ - process.env.DB_SCHEMA + - `.FAMILY B ON B."Family_id"= C."Family_id" + process.env.DB_SCHEMA + + `.FAMILY B ON B."Family_id"= C."Family_id" GROUP BY A.NO_OF_PACKAGES, B."Family_id", B."Lat", B."Long",STATUS,NGO_ID HAVING STATUS = 'Completed' AND NGO_ID=` + - Number(ngoid) + - `;`, + Number(ngoid) + + `;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -81,7 +81,7 @@ app.post("/getFamilyLatLng", function (request, response) { ); } }); - + }); app.get("/getNGOLatLng", function (request, response) { @@ -107,10 +107,36 @@ app.get("/getNGOLatLng", function (request, response) { }); } }); - + }); -app.get('/getFamilyLatLngForGovernment',function (request, response) { +app.get("/getNGOs", function (request, response) { + ibmdb.open(connStr, function (err, conn) { + if (err) { + console.log(err); + } else { + conn.query("SELECT * FROM " + process.env.DB_SCHEMA + ".NGO;", function ( + err, + data + ) { + if (err) { + return response.json({ success: -2, message: err }); + } else { + conn.close(function () { + return response.json({ + success: 1, + message: "Data Received!", + data: data, + }); + }) + } + }); + } + }); + +}); + +app.get('/getFamilyLatLngForGovernment', function (request, response) { ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -118,13 +144,13 @@ app.get('/getFamilyLatLngForGovernment',function (request, response) { conn.query( ` SELECT A.NO_OF_PACKAGES, B."Family_id", B."Lat", B."Long" FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION A INNER JOIN `+ - process.env.DB_SCHEMA + - `.USERS C ON C.ID = A.USER_ID + process.env.DB_SCHEMA + + `.TRANSACTION A INNER JOIN ` + + process.env.DB_SCHEMA + + `.USERS C ON C.ID = A.USER_ID INNER JOIN `+ - process.env.DB_SCHEMA + - `.FAMILY B ON B."Family_id"= C."Family_id" + process.env.DB_SCHEMA + + `.FAMILY B ON B."Family_id"= C."Family_id" GROUP BY A.NO_OF_PACKAGES, B."Family_id", B."Lat", B."Long",STATUS HAVING STATUS = 'Completed'`, function (err, data) { @@ -142,8 +168,8 @@ app.get('/getFamilyLatLngForGovernment',function (request, response) { }) } }); - - }); + +}); @@ -172,7 +198,7 @@ app.get("/getUsers", function (request, response) { }); } }); - + }); app.post("/getNGOCapacity", function (request, response) { @@ -183,10 +209,10 @@ app.post("/getNGOCapacity", function (request, response) { } else { conn.query( `SELECT * FROM ` + - process.env.DB_SCHEMA + - `.NGO where "NGO_ID" =` + - Number(ngoname) + - `;`, + process.env.DB_SCHEMA + + `.NGO where "NGO_ID" =` + + Number(ngoname) + + `;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -203,10 +229,10 @@ app.post("/getNGOCapacity", function (request, response) { ); } }); - + }); -app.post("/getNGOBeneficiaries", function(request,response){ +app.post("/getNGOBeneficiaries", function (request, response) { let ngoid = request.body.NGOId; ibmdb.open(connStr, function (err, conn) { if (err) { @@ -215,11 +241,11 @@ app.post("/getNGOBeneficiaries", function(request,response){ conn.query( `SELECT COUNT(distinct(USER_ID)) AS Beneficiaries FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION + process.env.DB_SCHEMA + + `.TRANSACTION WHERE STATUS ='Completed' AND NGO_ID=` + - Number(ngoid) + - `;`, + Number(ngoid) + + `;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -236,10 +262,10 @@ app.post("/getNGOBeneficiaries", function(request,response){ ); } }); - + }); -app.get('/getNGOUnprocessedRequests', function(request,response){ +app.get('/getNGOUnprocessedRequests', function (request, response) { ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -247,8 +273,8 @@ app.get('/getNGOUnprocessedRequests', function(request,response){ conn.query( `SELECT COUNT(*) AS requestBags FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION + process.env.DB_SCHEMA + + `.TRANSACTION GROUP BY STATUS HAVING STATUS ='Requested';`, function (err, data) { @@ -267,7 +293,7 @@ app.get('/getNGOUnprocessedRequests', function(request,response){ ); } }); - + }) app.post("/getUserRequest", function (request, response) { @@ -278,10 +304,10 @@ app.post("/getUserRequest", function (request, response) { } else { conn.query( "SELECT * FROM " + - process.env.DB_SCHEMA + - ".TRANSACTION where ID =" + - NGOId + - ";", + process.env.DB_SCHEMA + + ".TRANSACTION where ID =" + + NGOId + + ";", function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -298,7 +324,7 @@ app.post("/getUserRequest", function (request, response) { ); } }); - + }); app.post("/getDonorLogin", function (request, response) { @@ -310,12 +336,12 @@ app.post("/getDonorLogin", function (request, response) { } else { conn.query( `SELECT "Name", ID FROM ` + - process.env.DB_SCHEMA + - `."NGO" where "NGO_ID" =` + - Number(regno) + - ` AND "Password" = ` + - Number(pass) + - `;`, + process.env.DB_SCHEMA + + `."NGO" where "NGO_ID" =` + + Number(regno) + + ` AND "Password" = ` + + Number(pass) + + `;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -332,7 +358,7 @@ app.post("/getDonorLogin", function (request, response) { ); } }); - + }); app.post("/getRequestStatusCountForNGO", function (request, response) { @@ -344,11 +370,11 @@ app.post("/getRequestStatusCountForNGO", function (request, response) { conn.query( `SELECT A.STATUS, COUNT(*) as COUNT FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" A INNER JOIN NGO B ON B.ID = A.NGO_ID + process.env.DB_SCHEMA + + `."TRANSACTION" A INNER JOIN NGO B ON B.ID = A.NGO_ID GROUP BY A. NGO_ID, STATUS, B. NGO_ID HAVING B.NGO_ID = ` + - Number(regno) + - `;`, + Number(regno) + + `;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -365,10 +391,10 @@ app.post("/getRequestStatusCountForNGO", function (request, response) { ); } }); - + }); -app.post("/getRequestDateChart",function(request,response){ +app.post("/getRequestDateChart", function (request, response) { var mergeQuery = [] var ngoID = request.body.NGOId @@ -379,9 +405,9 @@ app.post("/getRequestDateChart",function(request,response){ conn.query( `SELECT COUNT(*) AS completedBags, DATE FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" GROUP BY STATUS, DATE, NGO_ID - HAVING STATUS ='Completed' AND NGO_ID = `+Number(ngoID)+` + process.env.DB_SCHEMA + + `."TRANSACTION" GROUP BY STATUS, DATE, NGO_ID + HAVING STATUS ='Completed' AND NGO_ID = `+ Number(ngoID) + ` ORDER BY DATE;`, function (err, data) { if (err) { @@ -391,8 +417,8 @@ app.post("/getRequestDateChart",function(request,response){ conn.query( ` SELECT Count(*) as requestedBags,date FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" + process.env.DB_SCHEMA + + `."TRANSACTION" GROUP BY status,date having STATUS ='Requested' ORDER BY DATE;`, @@ -411,13 +437,13 @@ app.post("/getRequestDateChart",function(request,response){ } } ); - + } } ); } }); - + }) app.post("/getTransactions", function (request, response) { @@ -428,13 +454,13 @@ app.post("/getTransactions", function (request, response) { } else { conn.query( ` SELECT B.ID ,B.DATE, A."First_Name", A."Last_Name",A."ID_cnic", A."Family_id", B.NO_OF_PACKAGES, B.STATUS - FROM USERS A + FROM USERS A INNER JOIN TRANSACTION B ON A.ID = B.USER_ID INNER JOIN NGO C ON B.NGO_ID = C.ID WHERE C.NGO_ID=` + - NGOId + - ` + NGOId + + ` UNION - ( + ( SELECT B.ID,B.DATE, A."First_Name", A."Last_Name",A."ID_cnic", A."Family_id", B.NO_OF_PACKAGES, B.STATUS FROM USERS A INNER JOIN TRANSACTION B ON A.ID = B.USER_ID WHERE STATUS='Requested') @@ -455,10 +481,10 @@ app.post("/getTransactions", function (request, response) { ); } }); - + }); -app.post("/updateTransaction", function(request,response){ +app.post("/updateTransaction", function (request, response) { let tId = request.body.tId; let status = request.body.status; let key = request.body.key; @@ -466,11 +492,11 @@ app.post("/updateTransaction", function(request,response){ if (err) { console.log(err); } else { - conn.query("UPDATE "+process.env.DB_SCHEMA+".TRANSACTION SET STATUS= '"+status+"', NGO_ID = "+Number(key)+" where ID ="+Number(tId)+";", function (err, data) { - if (err){ - return response.json({success:-2, message:err}); + conn.query("UPDATE " + process.env.DB_SCHEMA + ".TRANSACTION SET STATUS= '" + status + "', NGO_ID = " + Number(key) + " where ID =" + Number(tId) + ";", function (err, data) { + if (err) { + return response.json({ success: -2, message: err }); } - else{ + else { conn.close(function () { return response.json({ success: 1, @@ -478,17 +504,17 @@ app.post("/updateTransaction", function(request,response){ data: data, }); }) - + } - }); + }); } }); - - - + + + }); -app.post("/getMonthlyRequest",function(request,response){ +app.post("/getMonthlyRequest", function (request, response) { let NGOId = request.body.NGOId; ibmdb.open(connStr, function (err, conn) { if (err) { @@ -497,30 +523,30 @@ app.post("/getMonthlyRequest",function(request,response){ conn.query(` SELECT '01'||'-0'||MONTH("DATE")||'-'||YEAR("DATE") as date, COUNT(*) as total, STATUS FROM TRANSACTION GROUP BY '01'||'-0'||MONTH("DATE")||'-'|| YEAR("DATE"),STATUS, NGO_ID - Having NGO_ID=`+Number(NGOId)+`;`, function (err, data) { - if (err){ - return response.json({success:-2, message:err}); - } - else{ - - conn.close(function () { - return response.json({ - success: 1, - message: "Data Received!", - data: data, - }); - }) + Having NGO_ID=`+ Number(NGOId) + `;`, function (err, data) { + if (err) { + return response.json({ success: -2, message: err }); + } + else { - } - }); + conn.close(function () { + return response.json({ + success: 1, + message: "Data Received!", + data: data, + }); + }) + + } + }); } }); - - + + }); -app.post("/getProvinceData",function (request,response){ +app.post("/getProvinceData", function (request, response) { let NGOId = request.body.NGOId; ibmdb.open(connStr, function (err, conn) { if (err) { @@ -529,7 +555,7 @@ app.post("/getProvinceData",function (request,response){ conn.query( ` SELECT P."Name", SUM(NO_OF_PACKAGES) as total FROM NGO N INNER JOIN TRANSACTION T ON N.ID = T.NGO_ID INNER JOIN PROVINCE P ON P."ID" = N."province_id" - WHERE T.NGO_ID = `+Number(NGOId)+` + WHERE T.NGO_ID = `+ Number(NGOId) + ` GROUP BY P."Name" ;`, function (err, data) { if (err) { @@ -547,9 +573,9 @@ app.post("/getProvinceData",function (request,response){ ); } }); - - - + + + }) @@ -557,15 +583,15 @@ app.post("/getProvinceData",function (request,response){ //Government APIS app.get("/getNGOCapacityForGovernment", function (request, response) { //done - + ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); } else { conn.query( `SELECT SUM("Capacity") as total FROM ` + - process.env.DB_SCHEMA + - `.NGO;`, + process.env.DB_SCHEMA + + `.NGO;`, function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -577,17 +603,17 @@ app.get("/getNGOCapacityForGovernment", function (request, response) { //done data: data, }); }) - + } } ); } }); - - + + }); -app.get("/getNGOBeneficiariesForGovernment", function(request,response){//done +app.get("/getNGOBeneficiariesForGovernment", function (request, response) {//done ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -595,8 +621,8 @@ app.get("/getNGOBeneficiariesForGovernment", function(request,response){//done conn.query( `SELECT COUNT(distinct(USER_ID)) AS Beneficiaries FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION + process.env.DB_SCHEMA + + `.TRANSACTION WHERE STATUS ='Completed';`, function (err, data) { if (err) { @@ -614,11 +640,11 @@ app.get("/getNGOBeneficiariesForGovernment", function(request,response){//done ); } }); - - + + }); -app.get('/getNGOUnprocessedRequestsForGovernment', function(request,response){//done +app.get('/getNGOUnprocessedRequestsForGovernment', function (request, response) {//done ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -626,8 +652,8 @@ app.get('/getNGOUnprocessedRequestsForGovernment', function(request,response){// conn.query( `SELECT COUNT(*) AS requestBags FROM ` + - process.env.DB_SCHEMA + - `.TRANSACTION + process.env.DB_SCHEMA + + `.TRANSACTION GROUP BY STATUS HAVING STATUS ='Requested';`, function (err, data) { @@ -646,8 +672,8 @@ app.get('/getNGOUnprocessedRequestsForGovernment', function(request,response){// ); } }); - - + + }) app.get("/getUserRequestForGovernment", function (request, response) {//done @@ -657,8 +683,8 @@ app.get("/getUserRequestForGovernment", function (request, response) {//done } else { conn.query( "SELECT * FROM " + - process.env.DB_SCHEMA + - ".TRANSACTION ;", + process.env.DB_SCHEMA + + ".TRANSACTION ;", function (err, data) { if (err) { return response.json({ success: -2, message: err }); @@ -675,8 +701,8 @@ app.get("/getUserRequestForGovernment", function (request, response) {//done ); } }); - - + + }); app.get("/getRequestStatusCountForGovernment", function (request, response) {//done @@ -687,8 +713,8 @@ app.get("/getRequestStatusCountForGovernment", function (request, response) {//d conn.query( `SELECT A.STATUS, COUNT(*) as COUNT FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" A + process.env.DB_SCHEMA + + `."TRANSACTION" A GROUP BY STATUS`, function (err, data) { if (err) { @@ -706,11 +732,11 @@ app.get("/getRequestStatusCountForGovernment", function (request, response) {//d ); } }); - - + + }); -app.get("/getRequestDateChartForGovernment",function(request,response){ +app.get("/getRequestDateChartForGovernment", function (request, response) { var mergeQuery = [] ibmdb.open(connStr, function (err, conn) { if (err) { @@ -719,8 +745,8 @@ app.get("/getRequestDateChartForGovernment",function(request,response){ conn.query( `SELECT COUNT(*) AS completedBags, DATE FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" GROUP BY STATUS, DATE + process.env.DB_SCHEMA + + `."TRANSACTION" GROUP BY STATUS, DATE HAVING STATUS ='Completed' ORDER BY DATE;`, function (err, data) { @@ -731,8 +757,8 @@ app.get("/getRequestDateChartForGovernment",function(request,response){ conn.query( ` SELECT Count(*) as requestedBags,date FROM ` + - process.env.DB_SCHEMA + - `."TRANSACTION" + process.env.DB_SCHEMA + + `."TRANSACTION" GROUP BY status,date having STATUS ='Requested' ORDER BY DATE;`, @@ -748,17 +774,17 @@ app.get("/getRequestDateChartForGovernment",function(request,response){ data: mergeQuery, }); }) - + } } ); - + } } ); } }); - + }) app.get("/getTransactionsForGovernment", function (request, response) { @@ -768,7 +794,7 @@ app.get("/getTransactionsForGovernment", function (request, response) { } else { conn.query( ` SELECT B.ID, B.DATE, A."First_Name", A."Last_Name", A."ID_cnic", A."Family_id", B.NO_OF_PACKAGES,C."Name", B.STATUS - FROM USERS A + FROM USERS A INNER JOIN TRANSACTION B ON A.ID = B.USER_ID INNER JOIN NGO C ON B.NGO_ID = C.ID UNION ( @@ -795,7 +821,7 @@ app.get("/getTransactionsForGovernment", function (request, response) { }); -app.get("/getProvinceDataForGovernment",function (request,response){ +app.get("/getProvinceDataForGovernment", function (request, response) { ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -823,7 +849,7 @@ app.get("/getProvinceDataForGovernment",function (request,response){ }) -app.get("/getMonthlyRequestForGovernment",function(request,response){ +app.get("/getMonthlyRequestForGovernment", function (request, response) { ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err); @@ -831,22 +857,22 @@ app.get("/getMonthlyRequestForGovernment",function(request,response){ conn.query(` SELECT MONTH("DATE")||'-'||YEAR("DATE") as date, COUNT(*) as total, STATUS FROM TRANSACTION GROUP BY MONTH("DATE")||'-'|| YEAR("DATE"),STATUS;`, function (err, data) { - if (err){ - return response.json({success:-2, message:err}); - } - else{ - conn.close(function () { - return response.json({ - success: 1, - message: "Data Received!", - data: data, + if (err) { + return response.json({ success: -2, message: err }); + } + else { + conn.close(function () { + return response.json({ + success: 1, + message: "Data Received!", + data: data, + }); }); - }); - } - }); + } + }); } }); - + }); // let NGOId = request.body.NGOId; // conn.query("SELECT * FROM "+process.env.DB_SCHEMA+".TRANSACTION where ID ="+NGOId+";", function (err, data) { @@ -866,7 +892,7 @@ app.get("/getMonthlyRequestForGovernment",function(request,response){ // // openConnection(); // }); - function openConnection() { +function openConnection() { ibmdb.open(connStr, function (err, conn) { if (err) { console.log(err);