Skip to content

Instantly share code, notes, and snippets.

@daovietanh190499
Last active October 29, 2023 17:00
Show Gist options
  • Save daovietanh190499/b77adaa3b643758afd24c4a90e1ba0bc to your computer and use it in GitHub Desktop.
Save daovietanh190499/b77adaa3b643758afd24c4a90e1ba0bc to your computer and use it in GitHub Desktop.
function doGet(e){
return handleResponse(e);
}
function getData(sheet) {
var rows = sheet.getRange(2,1,(sheet.getLastRow()-1 <= 0) ? 1 : sheet.getLastRow()-1, sheet.getLastColumn()).getValues();
return rows
}
var SHEET_NAME = "orders";
var SHEET_PRODUCT_NAME = "products";
function handleResponse(e) {
var lock = LockService.getPublicLock();
lock.waitLock(30000);
try {
// next set where we write the data - you could write to multiple/alternate destinations
var doc = SpreadsheetApp.openById("YOUR_GOOGLE_SHEET_ID");
var sheet = doc.getSheetByName(SHEET_NAME);
var rows = getData(sheet)
let rrow = []
for(row of rows) {
if (row[6] === e.parameter["code"]) {
rrow = row
break
}
}
if (rrow.length > 0) {
return ContentService
.createTextOutput(JSON.stringify({
'status': rrow[7],
'code': rrow[6],
list: JSON.parse(rrow[5])['list'],
user: {
name: rrow[1],
phone: rrow[2],
email: rrow[3],
address: rrow[4],
}
}))
.setMimeType(ContentService.MimeType.JSON);
} else {
return ContentService
.createTextOutput(JSON.stringify({"result":"error", "error": e}))
.setMimeType(ContentService.MimeType.JSON);
}
} catch(e){
// if error return this
return ContentService
.createTextOutput(JSON.stringify({"result":"error", "error": e}))
.setMimeType(ContentService.MimeType.JSON);
} finally { //release lock
lock.releaseLock();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment