diff --git a/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js b/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js index 1c16b44f..53a9bd35 100644 --- a/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js +++ b/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js @@ -1,16 +1,5 @@ const apiKey = '8ALsk8jDOlynEwn8ScMBSnG87'; -async function prepareSheet() { - var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/'); - sheet = ss.getActiveSheet(); - lastRow = sheet.getLastRow(); - sheet.clear() - sheet.getRange(1,1).setValue("domain"); - for (var sh = 1; sh < 100; sh++) { - sheet.getRange(1, sh+1).setValue("groups_"+sh) - } -} - function main() { var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j"); var files = folder.getFiles(); @@ -37,16 +26,18 @@ function main() { } function moveOldFiles() { - var folder = DriveApp.getFolderById("15p4vXVQd6hhcMl73VOxD8VctL2gR-q43") + Logger.log("Moving files.") + var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j") var files = folder.getFiles() while (files.hasNext()) { var file = files.next(); var getDate = new Date(); var date = Utilities.formatDate(getDate, 'America/New_York', 'MM/dd/yyyy hh' ); var fileDate = file.getDateCreated(); + Logger.log("FILE: "+file+", DATE UPLOADED: "+fileDate) var fileDateFormatted = Utilities.formatDate(fileDate, 'America/New_York', 'MM/dd/yyyy hh'); if (date != fileDateFormatted) { - const destination = DriveApp.getFolderById('17WCI5QkV9W6j35a-1n9BspTF6z_MZ9yu'); + const destination = DriveApp.getFolderById('1cIPZCgoj8XdjMIfL75QfomJAxsy2smGT'); file.moveTo(destination); } } @@ -99,6 +90,9 @@ function austinComparseData(outdated_data, updated_data) { break; } } + MailApp.sendEmail("nrasmussen@gainsight.com", + "Anthology has submitted a CSV", + "Here are the domains that will be updated: "+domains_to_update); updatedDomainsOnly(domains_to_update); } @@ -129,86 +123,46 @@ function updatedDomainsOnly(domains_to_update) { } } } - - let tmpArray = array; const dom = array.shift(); const groups = array; Logger.log("{domain_to_update : {domain :"+dom+", group_ids : "+groups+" }}") sendWebhook({domain_to_update : { domain: dom, group_ids: groups }}) - replaceOnSheet(tmpArray); + replaceOnSheet(dom, groups); } } -function replaceOnSheet(tmpArray) { +function replaceOnSheet(dom, groups) { var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/'); var sheet = ss.getActiveSheet() var dataRow = Math.max(sheet.getLastRow(),1); - let domain = tmpArray.shift(); - let groupIds = tmpArray; + // let domain = tmpArray.shift(); + // let groupIds = tmpArray; - Logger.log(domain) - let boo = sheet.createTextFinder(domain).findNext() + + let boo = sheet.createTextFinder(dom).findNext() if (boo != null ) { + Logger.log("Replace on Sheet Domain: "+dom) + Logger.log("New groups: "+groups) group2 = [] currCell = boo.getRowIndex(); - groupIds.forEach(item => { if (item.length > 0) { group2.push(item) }}); + groups.forEach(item => { if (item.length > 0) { group2.push(item) }}); group2 = [group2]; //Logger.log(group2); - sheet.getRange(currCell, 1).setValue(domain); + sheet.getRange(currCell, 1).setValue(dom); sheet.getRange(currCell, 2, 1, group2[0].length).setValues(group2) } else { - groupIds.forEach(item => { if (item.includes("")){ } else { group2.push(item) }}); - //Logger.log(group2); - sheet.getRange(dataRow+1, 1).setValue(domain); + Logger.log("Add to Sheet: "+dom) + Logger.log("else groups: "+groups) + group2 = [] + //groups.forEach(item => { if (item.includes("")){ } else { group2.push(item) }}); + groups.forEach(item => { if (item.length > 0) { group2.push(item) }}); + Logger.log(group2); + group2 = [group2]; + sheet.getRange(dataRow+1, 1).setValue(dom); sheet.getRange(dataRow+1, 2, 1, group2[0].length).setValues(group2) } } -// function fullParse(full_data, previousLast) { -// for (var x = 1; x < full_data.length; x++) { -// var array = full_data[x]; -// for (var i = 1; i < array.length; i++) { -// var item = array[i] -// if (item != "") { -// var api_url = 'https://api.northpass.com/v2/groups/?filter[name][eq]='+encodeURIComponent(item); -// const settings = { -// async: true, -// crossDomain: true, -// method: 'GET', -// headers: { -// accept: 'application/json', -// 'X-Api-Key': apiKey -// } -// }; -// const sendMsg = UrlFetchApp.fetch(api_url, settings); -// var uuidResponse = sendMsg.getContentText(); -// var parseData = JSON.parse(uuidResponse) -// //Logger.log("Current Check:"+item) -// var groupID = parseData['data'][0]['id'] -// var groupName = array.indexOf(item); -// if (groupName != -1) { -// array[groupName] = groupID; -// } -// } -// } -// const dom = array.shift(); -// const groups = array; -// writeDataToSheet(dom, groups) -// } -// } - -//Inserts a new sheet and writes a 2D array of data in it -// function writeDataToSheet(dom, groups) { -// var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/'); -// var sheet = ss.getActiveSheet() -// var dataRow = Math.max(sheet.getLastRow(),1); -// sheet.insertRowAfter(dataRow+1); -// sheet.getRange(dataRow+1, 1).setValue(dom); -// for (var g = 0; g < groups.length; g++) { -// sheet.getRange(dataRow+1, g+2).setValue(groups[g]); -// } -// } - function sendWebhook(domain_to_update){ //Logger.log("Webhook function Object: "+JSON.stringify(domain_to_update)) var payload = domain_to_update @@ -217,5 +171,4 @@ function sendWebhook(domain_to_update){ 'payload': JSON.stringify(payload) }; UrlFetchApp.fetch('https://webhooks.workato.com/webhooks/rest/604b4fc0-fcd9-4f3b-b715-b42d7f740ba6/domains-updated', options); - }