Skip to content
This repository was archived by the owner on Mar 22, 2023. It is now read-only.

Commit fba3fb9

Browse files
committed
pairList added
1 parent e8a74e2 commit fba3fb9

File tree

3 files changed

+135
-98
lines changed

3 files changed

+135
-98
lines changed

app.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const { graphqlHTTP } = require("express-graphql");
1111
const schema = require("./graphql/schema");
1212
var listenerRouter = require('./routes/listenerroutes');
1313
var tokensListRouter = require('./routes/tokenslist');
14+
var pairsListRouter = require('./routes/pairslist');
1415
var coinsmarketcapapiRouter = require('./routes/coinsmarketcapapi');
1516

1617
// view engine setup
@@ -68,6 +69,7 @@ app.get("/", (req, res) => {
6869
});
6970
app.use('/', listenerRouter);
7071
app.use('/', tokensListRouter);
72+
app.use('/', pairsListRouter);
7173
app.use('/', coinsmarketcapapiRouter);
7274

7375
app.use('/graphql', graphqlHTTP({

routes/pairslist.js

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
require('dotenv').config()
2+
var express = require('express');
3+
var router = express.Router();
4+
var pairModel=require('../models/pair');
5+
var hashesofpairsModel=require('../models/hashesofpairs');
6+
7+
router.route("/getpairagainsttokens").post(async function (req, res, next) {
8+
try {
9+
10+
if(!req.body.token0)
11+
{
12+
return res.status(400).json({
13+
success: false,
14+
message: "token0 not found in the body.",
15+
});
16+
}
17+
if(!req.body.token1)
18+
{
19+
return res.status(400).json({
20+
success: false,
21+
message: "token1 not found in the body.",
22+
});
23+
}
24+
25+
var pairresult= await pairModel.find({});
26+
if(pairresult.length==0)
27+
{
28+
return res.status(400).json({
29+
success: false,
30+
message: "There is no pair in the database.",
31+
});
32+
}
33+
else
34+
{
35+
let paircontractHash=null;
36+
for(var i=0;i<pairresult.length;i++)
37+
{
38+
if(pairresult[i].token0.id == req.body.token0 && pairresult[i].token1.id == req.body.token1)
39+
{
40+
paircontractHash=pairresult[i].id;
41+
}
42+
if(i==pairresult.length-1)
43+
{
44+
if(paircontractHash==null)
45+
{
46+
return res.status(400).json({
47+
success: false,
48+
message: "There is no pair against this token0 and token1.",
49+
});
50+
}
51+
}
52+
}
53+
if(paircontractHash!=null)
54+
{
55+
var pairsresult2=await hashesofpairsModel.find({});
56+
if(pairsresult2.length==0)
57+
{
58+
console.log("there are no contract and package hash found in the database.");
59+
return res.status(400).json({
60+
success: false,
61+
message: "there are no contract and package hash found in the database."
62+
});
63+
}
64+
var pairpackageHash=null;
65+
for(var i=0;i<pairsresult2.length;i++)
66+
{
67+
if((pairsresult2[i].contractHash).toLowerCase()==paircontractHash.toLowerCase())
68+
{
69+
pairpackageHash=pairsresult2[i].packageHash;
70+
return res.status(200).json({
71+
success: true,
72+
message: "Pair has been found on this token0 and token1.",
73+
contractHash:paircontractHash,
74+
packageHash:pairpackageHash
75+
});
76+
}
77+
if(i==pairsresult2.length-1)
78+
{
79+
if(pairpackageHash==null)
80+
{
81+
return res.status(400).json({
82+
success: false,
83+
message: "There is no pair against this contract Hash in the hashesofpairs collection.",
84+
});
85+
}
86+
}
87+
}
88+
}
89+
90+
}
91+
92+
93+
94+
} catch (error) {
95+
console.log("error (try-catch) : " + error);
96+
return res.status(500).json({
97+
success: false,
98+
err: error,
99+
});
100+
}
101+
});
102+
103+
router.route("/getpairlist").get(async function (req, res, next) {
104+
try {
105+
106+
var pairresult= await pairModel.find({});
107+
if(pairresult.length==0)
108+
{
109+
return res.status(400).json({
110+
success: false,
111+
message: "There is no pair in the database.",
112+
});
113+
}
114+
else
115+
{
116+
return res.status(200).json({
117+
success: true,
118+
message: "Pair List: ",
119+
pairList:pairresult
120+
});
121+
122+
}
123+
124+
} catch (error) {
125+
console.log("error (try-catch) : " + error);
126+
return res.status(500).json({
127+
success: false,
128+
err: error,
129+
});
130+
}
131+
});
132+
133+
module.exports = router;

routes/tokenslist.js

Lines changed: 0 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ require('dotenv').config()
22
var express = require('express');
33
var router = express.Router();
44
var tokensListModel=require('../models/tokensList');
5-
var pairModel=require('../models/pair');
6-
var hashesofpairsModel=require('../models/hashesofpairs');
75

86
router.route("/addtokensList").post(async function (req, res, next) {
97
try {
@@ -59,100 +57,4 @@ router.route("/tokensList").get(async function (req, res, next) {
5957
}
6058
});
6159

62-
router.route("/getpair").post(async function (req, res, next) {
63-
try {
64-
65-
if(!req.body.token0)
66-
{
67-
return res.status(400).json({
68-
success: false,
69-
message: "token0 not found in the body.",
70-
});
71-
}
72-
if(!req.body.token1)
73-
{
74-
return res.status(400).json({
75-
success: false,
76-
message: "token1 not found in the body.",
77-
});
78-
}
79-
80-
var pairresult= await pairModel.find({});
81-
if(pairresult.length==0)
82-
{
83-
return res.status(400).json({
84-
success: false,
85-
message: "There is no pair in the database.",
86-
});
87-
}
88-
else
89-
{
90-
let paircontractHash=null;
91-
for(var i=0;i<pairresult.length;i++)
92-
{
93-
if(pairresult[i].token0.id == req.body.token0 && pairresult[i].token1.id == req.body.token1)
94-
{
95-
paircontractHash=pairresult[i].id;
96-
}
97-
if(i==pairresult.length-1)
98-
{
99-
if(paircontractHash==null)
100-
{
101-
return res.status(400).json({
102-
success: false,
103-
message: "There is no pair against this token0 and token1.",
104-
});
105-
}
106-
}
107-
}
108-
if(paircontractHash!=null)
109-
{
110-
var pairsresult2=await hashesofpairsModel.find({});
111-
if(pairsresult2.length==0)
112-
{
113-
console.log("there are no contract and package hash found in the database.");
114-
return res.status(400).json({
115-
success: false,
116-
message: "there are no contract and package hash found in the database."
117-
});
118-
}
119-
var pairpackageHash=null;
120-
for(var i=0;i<pairsresult2.length;i++)
121-
{
122-
if((pairsresult2[i].contractHash).toLowerCase()==paircontractHash.toLowerCase())
123-
{
124-
pairpackageHash=pairsresult2[i].packageHash;
125-
return res.status(200).json({
126-
success: true,
127-
message: "Pair has been found on this token0 and token1.",
128-
contractHash:paircontractHash,
129-
packageHash:pairpackageHash
130-
});
131-
}
132-
if(i==pairsresult2.length-1)
133-
{
134-
if(pairpackageHash==null)
135-
{
136-
return res.status(400).json({
137-
success: false,
138-
message: "There is no pair against this contract Hash in the hashesofpairs collection.",
139-
});
140-
}
141-
}
142-
}
143-
}
144-
145-
}
146-
147-
148-
149-
} catch (error) {
150-
console.log("error (try-catch) : " + error);
151-
return res.status(500).json({
152-
success: false,
153-
err: error,
154-
});
155-
}
156-
});
157-
15860
module.exports = router;

0 commit comments

Comments
 (0)