@@ -21,7 +21,7 @@ async function getYelp(offset) {
21
21
return data . businesses
22
22
}
23
23
24
- async function getRestaurants ( ) {
24
+ async function getYelpRestaurants ( ) {
25
25
let restaurants = [ ]
26
26
27
27
for ( let i = 0 ; i < 20 ; i ++ ) {
@@ -32,7 +32,7 @@ async function getRestaurants() {
32
32
}
33
33
34
34
async function createYelpRestaurants ( ) {
35
- const restaurants = await getRestaurants ( )
35
+ const restaurants = await getYelpRestaurants ( )
36
36
const restaurantsArr = restaurants . map ( restaurant => {
37
37
const location = restaurant . location . display_address . join ( ', ' )
38
38
@@ -49,19 +49,34 @@ async function createYelpRestaurants() {
49
49
} )
50
50
51
51
await Restaurant . bulkCreate ( restaurantsArr )
52
+ }
52
53
53
- const ratingsArr = restaurants . map ( ( restaurant , idx ) => {
54
- let id = idx + 1
55
- return {
56
- source : 'Yelp' ,
57
- rating : restaurant . rating ,
58
- restaurantId : id ,
59
- sourceLogo : iconUrl ,
60
- reviewUrl : restaurant . url
61
- }
62
- } )
63
-
64
- await Review . bulkCreate ( ratingsArr )
54
+ async function createYelpRatings ( restaurantObj ) {
55
+ try {
56
+ console . log ( 'Creating Yelp reviews...' )
57
+ const restaurants = await getYelpRestaurants ( )
58
+ let newObj = { }
59
+ const ratingsArr = restaurants
60
+ . filter ( restaurant => {
61
+ if ( restaurantObj [ restaurant . name ] && ! newObj [ restaurant . name ] ) {
62
+ newObj [ restaurant . name ] = true
63
+ return true
64
+ }
65
+ } )
66
+ . map ( restaurant => {
67
+ return {
68
+ source : 'Yelp' ,
69
+ rating : restaurant . rating ,
70
+ restaurantId : restaurantObj [ restaurant . name ] . id ,
71
+ sourceLogo : iconUrl ,
72
+ reviewUrl : restaurant . url
73
+ }
74
+ } )
75
+ await Review . bulkCreate ( ratingsArr )
76
+ console . log ( 'Yelp reviews are done!' )
77
+ } catch ( error ) {
78
+ console . error ( error )
79
+ }
65
80
}
66
81
67
82
async function yelpCreate ( ) {
@@ -74,4 +89,4 @@ async function yelpCreate() {
74
89
}
75
90
}
76
91
77
- module . exports = yelpCreate
92
+ module . exports = { yelpCreate, createYelpRatings }
0 commit comments