UNPKG

biz2credit-code-shubham

Version:
81 lines (65 loc) 2.49 kB
# Biz2Credit Code Challenge ## Requirements Assignment – Coding Challenge: - We have some customer records in a text file (customers.txt) -- one customer per line, JSON lines formatted. We want to invite any customer within 100km of Dublin for some food and drinks on us. Write a program that will read the full list of customers and output the names and user ids of matching customers (within 100km), sorted by User ID (ascending). - Don't forget, you'll need to convert degrees to radians. - The GPS coordinates for Dublin area is 53.339428, -6.257664. We're looking for you to produce working code, with enough room to demonstrate how to structure components in a small program. Package the searching algorithm as an abstraction layer and installable component through npm package. ## Usage ### Require ```javascript let Biz2Credit = require('biz2credit-code-shubham'); ``` ### Calling the API with defaults ```javascript let Biz2Credit = require('biz2credit-code-shubham'); let b2c = new Biz2Credit(); b2c.getEligibleCustomers().catch((err) => { console.log(`Error received: `, err.message); }).then((eligibleCustomers) => { console.log(eligibleCustomers); }); ``` ### Providing Custom Configrations/Options #### Providing Customer Eligibility Distance as 50 Miles ```javascript let Biz2Credit = require('biz2credit-code-shubham'); let b2c = new Biz2Credit(); let options = { distanceUnit: 'M', distance : 50 }; b2c.getEligibleCustomers(options).catch((err) => { console.log(`Error received: `, err.message); }).then((eligibleCustomers) => { console.log(eligibleCustomers); }); ``` #### Providing Custom File Path ```javascript let Biz2Credit = require('biz2credit-code-shubham'); let b2c = new Biz2Credit(); let options = { filePath : '<complete path of the file>' }; b2c.getEligibleCustomers(options).catch((err) => { console.log(`Error received: `, err.message); }).then((eligibleCustomers) => { console.log(eligibleCustomers); }); ``` #### Providing Custom Source Address, Like your Noida office instead of Dublin ```javascript let Biz2Credit = require('biz2credit-code-shubham'); let b2c = new Biz2Credit(); let options = { sourceCoordinates: { latitude : 28.583176, longitude : 77.318184 } }; b2c.getEligibleCustomers(options).catch((err) => { console.log(`Error received: `, err.message); }).then((eligibleCustomers) => { console.log(eligibleCustomers); }); ```