// 为所有要访问的字段创建变量
var startField = Context.GetField("Start Date") ;
var endField = Context.GetField("End Date");
var durationField = Context.GetField("Duration");
var startDate = startField.Value;
var endDate = endField.Value;
//检查文档中是否找到了"Start Date"和"End Date"字段
if (endField && endDate && startField && startDate)
{
//计算病假时长
var length = (1 + (endDate.getTime() - startDate.getTime()) / 3600000 / 24);
//如果未找到时长字段或无法将其解析为数字,则将计算值传递给该字段
if (!durationField.Value)
durationField.Value = length;
//如果找到了时长字段,则将其值与计算的时长进行比较
else if (durationField.Value != length)
{
Context.CheckSucceeded = false;
Context.ErrorMessage = "\"Duration\"字段的值与实际病假时长不匹配";
durationField.AddSuggestion(length.toString());
}
}