Skip to content

Instantly share code, notes, and snippets.

@xTCry
Created February 12, 2019 00:38
Show Gist options
  • Save xTCry/3853c4c1b3c659260fbc7d7e1d8df717 to your computer and use it in GitHub Desktop.
Save xTCry/3853c4c1b3c659260fbc7d7e1d8df717 to your computer and use it in GitHub Desktop.
Test Get TimeTable from GoogleSheets
async function testSheets() {
const spreadsheetId = "1DeJARTKHRb_PA6o2-MnWczc7bVsUYUpKxrKWUOGazdg";
function cad(weekDay, week) {
weekDay = weekDay || 1;
week = week || 1;
let
startShag = 5,
nextShag = 3,
dayShag = 6;
let
weekCalc = ((weekDay-1)%3)==0? 1: ((weekDay-1)%3)+1,
partWeek = (weekDay<4)? 0: 1,
// shag = startShag + 1*weekCalc + (nextShag*2)*(week-1) + (dayShag*weekCalc) + (dayShag*3)*(week-1);
// shag = startShag + 1*weekCalc + (dayShag)*(week-1) + (dayShag*weekCalc) + (dayShag*nextShag)*(week-1);
shag = startShag + weekCalc + (dayShag*weekCalc) + (dayShag*nextShag+dayShag)*(week-1);
let A2 = shag, A1 = A2-dayShag;
return (!partWeek? "C": "I")+A1+":"+(!partWeek? "H": "N")+A2;
}
sheetsServiceService.spreadsheets.values.batchGet({
spreadsheetId,
majorDimension: "ROWS",
dateTimeRenderOption: "FORMATTED_STRING",
valueRenderOption: "FORMATTED_VALUE",
ranges: [ cad(2, 2), cad(3, 2), cad(4, 2), cad(1, 3), cad(2, 3), cad(3, 3) ],
}, function(err, response) {
if (err) {
console.error(err);
return;
}
for(let data of response.data.valueRanges) {
// console.log(data.values);
if(data.values && data.values.length > 0) {
let hh = data.values;
let dateG = (hh[0][0]).split("\n");
// let msg = "HH ["+((hh[0][0]).replace(/\n|\r/g, " "))+"]:\n";
let msg = {
"ПН": "📕 Расписание на Понедельник",
"ВТ": "📗 Расписание на Вторник",
"СР": "📘 Расписание на Среду",
"ЧТ": "📙 Расписание на Четверг",
"ПТ": "📓 Расписание на Пятницу",
"СБ": "📔 Расписание на Субботу",
}[ dateG[0] ];
msg += " ("+dateG[1]+".**.2019)\n";
for(let i=0,y=0,tt = hh[i]; i<hh.length;tt = hh[++i],++y) {
if(tt.length > 2 || (i==2 && tt.length == 2/*tt[1] == "11:50-12:20"*/)) {
// console.log(tt)
if(tt.length == 2/*tt[1] == "11:50-12:20"*/) {
if(hh[1].length>2 && hh[3].length>2) {
msg += "✌ "+tt[1]+". FREE TIME";
msg += "\n";
--y;
}
}
else {
msg += getENJ(y+1)+" "+tt[1]+". "+ (tt[2].replace(/\n|\r/g, "/")) +(tt.length>3? " "+tt[3]: "")+(tt.length>4? " ["+tt[4]+"]": "");
msg += "\n";
}
}
}
console.log(msg);
}
}
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment