update,
This commit is contained in:
121
catmk2/task1/utils/sendPaymentNoticeEmail.js
Normal file
121
catmk2/task1/utils/sendPaymentNoticeEmail.js
Normal file
@@ -0,0 +1,121 @@
|
||||
function sendPaymentNoticeEmail(row) {
|
||||
var output = { state: "init", debug: {}, error: {} };
|
||||
var sheet = getSheetStudentProgress();
|
||||
|
||||
// var filename = "payment_guide.pdf";
|
||||
var fps_tutorial_pdf_file_id = "1iD4CL8X-Nr7vfmj3UI3OzrJaKl1Gbg8tGAi6T6EmEJ0";
|
||||
var fps_tutorial_pdf_file = DriveApp.getFileById(fps_tutorial_pdf_file_id);
|
||||
|
||||
// NOTE: student email?
|
||||
var student_email_address_cell = getCell(
|
||||
sheet,
|
||||
row,
|
||||
COL_STUDENT_PROGRESS_EMAIL_ADDRESS
|
||||
);
|
||||
var student_email_address = readCell(student_email_address_cell);
|
||||
|
||||
var student_chinese_name_cell = getCell(
|
||||
sheet,
|
||||
row,
|
||||
COL_STUDENT_PROGRESS_CHINESE_NAME
|
||||
);
|
||||
var student_chinese_name = readCell(student_chinese_name_cell);
|
||||
|
||||
// NOTE: courase_name
|
||||
var course_offered_cell = getCell(
|
||||
sheet,
|
||||
row,
|
||||
COL_STUDENT_PROGRESS_COURSE_OFFERED
|
||||
);
|
||||
var course_offered = readCell(course_offered_cell);
|
||||
if (course_offered == "") {
|
||||
output = {
|
||||
...output,
|
||||
debug: {
|
||||
...output.debug,
|
||||
remarks: {
|
||||
course_offered,
|
||||
comment: "found empty",
|
||||
},
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
// NOTE: course_code
|
||||
var course_code_cell = getCell(sheet, row, COL_STUDENT_PROGRESS_COURSE_CODE);
|
||||
var course_code = readCell(course_code_cell);
|
||||
if (course_code == "") {
|
||||
output = {
|
||||
...output,
|
||||
debug: {
|
||||
...output.debug,
|
||||
remarks: {
|
||||
course_code,
|
||||
comment: "found empty",
|
||||
},
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
// NOTE: payment_link
|
||||
var payment_link_cell = getCell(
|
||||
sheet,
|
||||
row,
|
||||
COL_STUDENT_PROGRESS_PAYMENT_LINK
|
||||
);
|
||||
var payment_link = readCell(payment_link_cell);
|
||||
if (payment_link == "") {
|
||||
output = {
|
||||
...output,
|
||||
debug: {
|
||||
...output.debug,
|
||||
remarks: {
|
||||
payment_link,
|
||||
comment: "found empty",
|
||||
},
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
// NOTE: courase_name
|
||||
// NOTE: courase_name
|
||||
|
||||
try {
|
||||
var subject = email_title(course_offered);
|
||||
// var body = email_content("中文名", "chinese 中文科", "CHI001");
|
||||
var htmlBody = email_content(
|
||||
student_chinese_name,
|
||||
course_offered,
|
||||
course_code,
|
||||
payment_link,
|
||||
getChineseDayString()
|
||||
);
|
||||
var recipient = student_email_address;
|
||||
if (recipient=='') throw new Error('email address not valid');
|
||||
|
||||
var sender = "testhelloworld04@gmail.com";
|
||||
|
||||
// https://developers.google.com/apps-script/reference/mail/mail-app
|
||||
var options = {
|
||||
bcc: sender,
|
||||
|
||||
replyTo: sender,
|
||||
to: recipient,
|
||||
subject: subject,
|
||||
// body: body,
|
||||
htmlBody: htmlBody,
|
||||
attachments: [fps_tutorial_pdf_file.getAs(MimeType.PDF)],
|
||||
};
|
||||
|
||||
sendEmail(options);
|
||||
updateNotificationDate(row)
|
||||
appendResult(row, "send email done");
|
||||
|
||||
output = { ...output, state: "send email done" };
|
||||
} catch (error) {
|
||||
output = { ...output, error };
|
||||
console.log("sendEmail error");
|
||||
console.log(error);
|
||||
throw error;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user