You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改循环内IF语句代码,使邮件主题含合同到期状态

问题描述

我有一套可正常运行的代码,当合同到期日距离当前日期为90天、60天、30天或到期当日时,会发送邮件提醒。目前邮件主题未包含到期状态(如“将于30天后到期”),该状态仅在邮件正文中显示。请问如何修改代码,让到期状态也显示在邮件主题中?

当前状态示例

主题:(TEST) ALERT: C1PH TPM Contract FFMIRAVITE INC with Contract # 41501
邮件正文:, , with contract name , and contract number will expire in 30 days.

修改方案

核心是将传递给sendEmail函数的到期状态文本,同时整合到邮件主题中,具体修改如下:

修改后的完整代码

for (var i = 0; i < duedates.length; i++) {
  if (duedates[i] == formattedCurrentDate) {
    sendEmail(i + 2, sheetquery, " is Expired as of today."); 
  } else if (duedates[i] == formattedThirtyDaysFromNow) {
    sendEmail(i + 2, sheetquery, " will expire in 30 days.");
  } else if (duedates[i] == formattedSixtyDaysFromNow) {
    sendEmail(i + 2, sheetquery, " will expire in 60 days.");
  } else if (duedates[i] == formattedNinetyDaysFromNow) {
    sendEmail(i + 2, sheetquery, " will expire in 90 days.");
  }
}

function sendEmail(rowIndex, sheetquery, expirationStatus) {
  var thirdparty = sheetquery.getRange(rowIndex, 3).getValue();
  var contracttype = sheetquery.getRange(rowIndex, 4).getValue();
  var contractnumber = sheetquery.getRange(rowIndex, 6).getValue();
  var contractname = sheetquery.getRange(rowIndex, 7).getValue();
  var recipientsTO = "myemail@gmail.com";
  // 将到期状态添加到主题末尾,用竖线分隔提升可读性
  var subject = "(TEST) ALERT: C1PH TPM Contract " + thirdparty + " with Contract # " + contractnumber + " | " + expirationStatus.trim();
  var message = thirdparty + ", " + contracttype + ", with contract name " + contractname + ", and contract number " + contractnumber + expirationStatus;
  
  GmailApp.sendEmail(recipientsTO, subject, message);
}

关键修改点

  • 将sendEmail函数的第三个参数名从isExpiringToday改为expirationStatus,更准确反映参数的实际用途(涵盖所有到期提醒状态)
  • 在主题字符串末尾拼接到期状态文本,用|作为分隔符优化视觉效果,同时调用trim()去除状态文本前后冗余空格
  • 保留原有邮件正文的生成逻辑,确保正文内容不受影响

内容的提问来源于stack exchange,提问作者Tinkinips

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 18:58:13