Skip to content

Commit 36a673a

Browse files
kartikagarwal01@gmail.comkartikagarwal01@gmail.com
authored andcommitted
chnages
1 parent 87b8763 commit 36a673a

5 files changed

Lines changed: 60 additions & 31 deletions

File tree

src/server/api/app.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,9 @@ function apiRoutes() {
5353
apiRouter.get('/users/:userID/books/:bookID', api.http(api.booksApi.getBook));
5454
apiRouter.del('/users/:userID/books/:bookID', api.http(api.booksApi.deleteBook));
5555

56-
apiRouter.get('/fetchBook', api.http(api.booksApi.fetchBook));
56+
apiRouter.get('/fetchBooks', api.http(api.booksApi.fetchBook));
57+
58+
apiRouter.get('/fetchBooks', api.http(api.booksApi.fetchBookTest));
5759

5860

5961
return apiRouter;

src/server/api/books.js

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,22 @@ const booksApi = {
104104
async fetchBook(object, options){
105105
let { params : urlParams } = options;
106106
let { longitude, latitude, radius = DEFAULT_RADIUS } =urlParams;
107-
}
107+
108+
let query = {
109+
"location":{
110+
$geoWithin:{
111+
$centerSphere:[[77.229500000000001592, 28.0], apiUtils.milesToRadian(radius)]
112+
}
113+
}
114+
};
115+
116+
let response = await Books.find(query);
117+
118+
return {
119+
message :`Books fetch successfully`,
120+
response:response
121+
}
122+
},
108123
};
109124

110125
export default booksApi;

src/server/api/utils/utils.js

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,28 +4,34 @@ import AccessTokenModel from "../../models/access-token";
44
import * as errors from "../../errors";
55

66
let apiUtils = {
7-
generateLoginToken(userInfo) {
8-
let tokenPayload = _.pick(userInfo, ["_id", "name", "role"]);
9-
return jwtHelper.generateToken(tokenPayload)
10-
.then(token => apiUtils.storeLoginToken(token, userInfo).then(() => token));
11-
},
7+
generateLoginToken(userInfo) {
8+
let tokenPayload = _.pick(userInfo, ["_id", "name", "role"]);
9+
return jwtHelper.generateToken(tokenPayload)
10+
.then(token => apiUtils.storeLoginToken(token, userInfo).then(() => token));
11+
},
1212

13-
/**
14-
* Store the generated token for a user after the user logins
15-
*/
16-
storeLoginToken:(token, user) => {
17-
return new AccessTokenModel({
18-
token:token,
19-
user :user._id
20-
}).save();
21-
},
13+
/**
14+
* Store the generated token for a user after the user logins
15+
*/
16+
storeLoginToken:(token, user) => {
17+
return new AccessTokenModel({
18+
token:token,
19+
user :user._id
20+
}).save();
21+
},
2222

2323

24-
async checkUserID(UserModel, userID){
25-
let count = await UserModel.count({ _id:userID });
26-
if (count == 0) throw new errors.NotFoundError({ message:`User id '${userID}' not found.` })
24+
async checkUserID(UserModel, userID){
25+
let count = await UserModel.count({ _id:userID });
26+
if (count == 0) throw new errors.NotFoundError({ message:`User id '${userID}' not found.` })
27+
},
28+
29+
async milesToRadian(miles){
30+
let earthRadiusInMiles = 3959;
31+
return miles / earthRadiusInMiles;
32+
}
2733
}
28-
};
34+
;
2935

3036

3137
export default apiUtils;

src/server/models/books.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,9 @@ const BooksSchema = new Schema({
2424

2525
language:{ type:String, enum:_.values(LANGUAGE) },
2626

27-
user:{
28-
type:Schema.ObjectId, ref:'User', required:true
29-
}
27+
user:{ type:Schema.ObjectId, ref:'User', required:true }
3028
});
3129

3230

33-
const Jokes = mongoose.model('Books', BooksSchema);
34-
export default Jokes;
31+
const Books = mongoose.model('Books', BooksSchema);
32+
export default Books;

test/index.js

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
1-
const _ = require("lodash");
1+
function a() {
2+
var a = [{ "A":"b" }];
3+
setTimeout(function (err, succ) {
4+
setTimeout(function (err, succ) {
5+
setTimeout(function (err, succ) {
6+
console.log("a => ", a);
7+
}, 500);
8+
console.log("a => ", a);
9+
}, 500);
10+
console.log("a => ", a);
11+
}, 500);
12+
console.log("a => ", a);
13+
}
214

3-
let a = {
4-
name:"rahul"
5-
};
6-
console.log("() : ", _.extend(a, { class:"x" }));
7-
console.log("() : ", a);
15+
a();

0 commit comments

Comments
 (0)