print out recipes that contain as many input ingredients as possible
Showing
1 changed file
with
9 additions
and
4 deletions
| 1 | var express = require('express'); | 1 | var express = require('express'); |
| 2 | const request = require('request'); | 2 | const request = require('request'); |
| 3 | const TARGET_URL = 'https://api.line.me/v2/bot/message/reply' | 3 | const TARGET_URL = 'https://api.line.me/v2/bot/message/reply' |
| 4 | -const TOKEN = '' | 4 | +const TOKEN = 'zVAczqoJ+L9oykqhEj7HoP7f6Nyb+R3T1TntHXQhYihI+KIxH4SZDGpKu0jKsMXMHKBVXpmbybA+oaV8u/dfLppKe3NHXU9AdBVypy9NgfWiFPLlcwm3GdkVPAZGoS4nvOCXWDKUb+ixPKWjlbnChAdB04t89/1O/w1cDnyilFU=' |
| 5 | const fs = require('fs'); | 5 | const fs = require('fs'); |
| 6 | const path = require('path'); | 6 | const path = require('path'); |
| 7 | const HTTPS = require('https'); | 7 | const HTTPS = require('https'); |
| ... | @@ -26,28 +26,33 @@ app.post('/hook', function (req, res) { | ... | @@ -26,28 +26,33 @@ app.post('/hook', function (req, res) { |
| 26 | var db = mysql.createConnection({ | 26 | var db = mysql.createConnection({ |
| 27 | host: 'chatbot.c7fzgftc3yrm.us-east-1.rds.amazonaws.com', | 27 | host: 'chatbot.c7fzgftc3yrm.us-east-1.rds.amazonaws.com', |
| 28 | user: 'chatbot', | 28 | user: 'chatbot', |
| 29 | - password: '', | 29 | + password: '11111111', |
| 30 | database: 'chatbot', | 30 | database: 'chatbot', |
| 31 | port: '3306' | 31 | port: '3306' |
| 32 | }); | 32 | }); |
| 33 | 33 | ||
| 34 | db.connect(); | 34 | db.connect(); |
| 35 | 35 | ||
| 36 | + var max = 0; | ||
| 37 | + | ||
| 36 | db.query('SELECT * FROM recipe', function (error, results, fields) { | 38 | db.query('SELECT * FROM recipe', function (error, results, fields) { |
| 37 | if (error) { | 39 | if (error) { |
| 38 | console.log(error); | 40 | console.log(error); |
| 39 | } | 41 | } |
| 40 | var arr1 = new Array(); | 42 | var arr1 = new Array(); |
| 41 | - var arr2 = new Array(); | ||
| 42 | var input_ingredients_list = message.text.split(" "); | 43 | var input_ingredients_list = message.text.split(" "); |
| 43 | console.log(input_ingredients_list); | 44 | console.log(input_ingredients_list); |
| 44 | for (var i = 0; i < results.length; i++) { | 45 | for (var i = 0; i < results.length; i++) { |
| 45 | var ingredients_list = results[i].ingrediant.split(","); | 46 | var ingredients_list = results[i].ingrediant.split(","); |
| 46 | var count = ingredients_list.filter(x => input_ingredients_list.includes(x)).length; | 47 | var count = ingredients_list.filter(x => input_ingredients_list.includes(x)).length; |
| 48 | + if (count > max) { | ||
| 49 | + max = count; | ||
| 50 | + var arr2 = new Array(); | ||
| 51 | + } | ||
| 47 | if (count === input_ingredients_list.length) { | 52 | if (count === input_ingredients_list.length) { |
| 48 | arr1.push(i); | 53 | arr1.push(i); |
| 49 | } | 54 | } |
| 50 | - else if (arr1.length === 0 && count != 0) { | 55 | + else if (arr1.length === 0 && count != 0 && count === max) { |
| 51 | arr2.push(i); | 56 | arr2.push(i); |
| 52 | } | 57 | } |
| 53 | } | 58 | } | ... | ... |
-
Please register or login to post a comment