From 3e96cbd9e0db11e45df693e7a4e95f5f80c36c81 Mon Sep 17 00:00:00 2001 From: Travis Surmi Date: Wed, 23 Aug 2017 09:26:05 -0700 Subject: [PATCH 1/4] javascript-workshops homework --- .../src/functions/getActiveUsers.js | 16 ++++++++++++++++ .../src/functions/getMostExpensiveProduct.js | 15 +++++++++++++++ .../src/functions/getProductById.js | 11 +++++++++++ .../src/functions/getUserById.js | 9 +++++++++ 4 files changed, 51 insertions(+) create mode 100644 data-and-functions-1/src/functions/getActiveUsers.js create mode 100644 data-and-functions-1/src/functions/getMostExpensiveProduct.js create mode 100644 data-and-functions-1/src/functions/getProductById.js create mode 100644 data-and-functions-1/src/functions/getUserById.js diff --git a/data-and-functions-1/src/functions/getActiveUsers.js b/data-and-functions-1/src/functions/getActiveUsers.js new file mode 100644 index 0000000..4579eb2 --- /dev/null +++ b/data-and-functions-1/src/functions/getActiveUsers.js @@ -0,0 +1,16 @@ +const getActiveUsers = (data, users) => { + if (data == null || data.users == null) { + return null + } else { + const activeUsers = [] + for (let i = 0; i < data.users.length; i++) { + const activeUser = data.users[i] + if (activeUser.accountActive === true) { + activeUsers.push(activeUser) + } + } + return activeUsers + } +} + +export default getActiveUsers diff --git a/data-and-functions-1/src/functions/getMostExpensiveProduct.js b/data-and-functions-1/src/functions/getMostExpensiveProduct.js new file mode 100644 index 0000000..1863096 --- /dev/null +++ b/data-and-functions-1/src/functions/getMostExpensiveProduct.js @@ -0,0 +1,15 @@ +const getMostExpensiveProduct = (data, products) => { + if (data == null || data.products == null) { + return null + } else { + let mostExpensive = data.products[0] + for (let i = 0; i < data.products.length; i++) { + if (mostExpensive.price < products.price) { + mostExpensive = products + } + } + return mostExpensive + } +} + +export default getMostExpensiveProduct diff --git a/data-and-functions-1/src/functions/getProductById.js b/data-and-functions-1/src/functions/getProductById.js new file mode 100644 index 0000000..83cd910 --- /dev/null +++ b/data-and-functions-1/src/functions/getProductById.js @@ -0,0 +1,11 @@ +const getProductById = (data, id) => { + if (data == null || data.products == null || id == null) { + return null + }else{ + return data.products.find((products) => { + return products.id === id + }) + } +} + +export default getProductById diff --git a/data-and-functions-1/src/functions/getUserById.js b/data-and-functions-1/src/functions/getUserById.js new file mode 100644 index 0000000..5744762 --- /dev/null +++ b/data-and-functions-1/src/functions/getUserById.js @@ -0,0 +1,9 @@ +const getUserById = (data, id) => { + if (data == null || id == null || data.users == null) { + return null + }else{ + return data.users.find((users) => users.id === id) + } +} + +export default getUserById From 6a6c52ef0aca828ecdf8f33a00ce407e67e6ef11 Mon Sep 17 00:00:00 2001 From: Travis Surmi Date: Wed, 23 Aug 2017 09:52:50 -0700 Subject: [PATCH 2/4] most expenisive --- .../src/functions/getMostExpensiveProduct.js | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/data-and-functions-1/src/functions/getMostExpensiveProduct.js b/data-and-functions-1/src/functions/getMostExpensiveProduct.js index 1863096..fcf49dc 100644 --- a/data-and-functions-1/src/functions/getMostExpensiveProduct.js +++ b/data-and-functions-1/src/functions/getMostExpensiveProduct.js @@ -1,15 +1,16 @@ -const getMostExpensiveProduct = (data, products) => { +const getMostExpensiveProduct = (data) => { if (data == null || data.products == null) { return null - } else { - let mostExpensive = data.products[0] - for (let i = 0; i < data.products.length; i++) { - if (mostExpensive.price < products.price) { - mostExpensive = products - } + } + + let mostExpensive = data.products[0] + for (let i = 1; i < data.products.length; i++) { + const currentProduct = data.products[i] + if (mostExpensive.price < currentProduct.price) { + mostExpensive = currentProduct } - return mostExpensive } + return mostExpensive } export default getMostExpensiveProduct From fb1af3e5083da1e5a04f6972ddacb4f25c845306 Mon Sep 17 00:00:00 2001 From: Travis Surmi Date: Wed, 23 Aug 2017 15:33:48 -0700 Subject: [PATCH 3/4] cleaned up my code per Jay's notes --- .../src/functions/getActiveUsers.js | 8 +++--- .../src/functions/getOrderInfo.js | 26 +++++++++++++++++++ .../src/functions/getProductById.js | 4 +-- .../src/functions/getUserById.js | 2 +- 4 files changed, 33 insertions(+), 7 deletions(-) create mode 100644 data-and-functions-1/src/functions/getOrderInfo.js diff --git a/data-and-functions-1/src/functions/getActiveUsers.js b/data-and-functions-1/src/functions/getActiveUsers.js index 4579eb2..8739e89 100644 --- a/data-and-functions-1/src/functions/getActiveUsers.js +++ b/data-and-functions-1/src/functions/getActiveUsers.js @@ -1,12 +1,12 @@ -const getActiveUsers = (data, users) => { +const getActiveUsers = (data) => { if (data == null || data.users == null) { return null } else { const activeUsers = [] for (let i = 0; i < data.users.length; i++) { - const activeUser = data.users[i] - if (activeUser.accountActive === true) { - activeUsers.push(activeUser) + const currentUser = data.users[i] + if (currentUser.accountActive === true) { + activeUsers.push(currentUser) } } return activeUsers diff --git a/data-and-functions-1/src/functions/getOrderInfo.js b/data-and-functions-1/src/functions/getOrderInfo.js new file mode 100644 index 0000000..07af716 --- /dev/null +++ b/data-and-functions-1/src/functions/getOrderInfo.js @@ -0,0 +1,26 @@ +import getProductById from './getProductById' +import getUserById from './getUserById' + +const getOrderInfo = (DATA) => { + if (DATA == null || DATA.orders == null) { + return null + } + const orderInfoArr = [] + + for (let i = 0; i < DATA.orders.length; i++) { + const currentOrder = DATA.orders[i] + + const orderId = currentOrder.id + const userName = getUserById(DATA, currentOrder.userId).name + const price = getProductById(DATA, currentOrder.productId).price + const orderInfo = { + orderId: orderId, + userName: userName, + price: price + } + orderInfoArr.push(orderInfo) + } + return orderInfoArr +} + +export default getOrderInfo diff --git a/data-and-functions-1/src/functions/getProductById.js b/data-and-functions-1/src/functions/getProductById.js index 83cd910..2fe54bf 100644 --- a/data-and-functions-1/src/functions/getProductById.js +++ b/data-and-functions-1/src/functions/getProductById.js @@ -2,8 +2,8 @@ const getProductById = (data, id) => { if (data == null || data.products == null || id == null) { return null }else{ - return data.products.find((products) => { - return products.id === id + return data.products.find((p) => { + return p.id === id }) } } diff --git a/data-and-functions-1/src/functions/getUserById.js b/data-and-functions-1/src/functions/getUserById.js index 5744762..840112a 100644 --- a/data-and-functions-1/src/functions/getUserById.js +++ b/data-and-functions-1/src/functions/getUserById.js @@ -2,7 +2,7 @@ const getUserById = (data, id) => { if (data == null || id == null || data.users == null) { return null }else{ - return data.users.find((users) => users.id === id) + return data.users.find((u) => u.id === id) } } From 698a51b60f053d638707a603017e3c6a88aa59bc Mon Sep 17 00:00:00 2001 From: Travis Surmi Date: Wed, 23 Aug 2017 15:49:28 -0700 Subject: [PATCH 4/4] made changes to the code per Jay's notes --- data-and-functions-2/src/functions/getProductsForOrder.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 data-and-functions-2/src/functions/getProductsForOrder.js diff --git a/data-and-functions-2/src/functions/getProductsForOrder.js b/data-and-functions-2/src/functions/getProductsForOrder.js new file mode 100644 index 0000000..e69de29