microsoft-graph-api - 如何撤消 Outlook 任务完成?
问题描述
使用 Outlook,我只需选择“新任务”并输入主题并单击“保存并关闭”即可创建一个非常简单的任务。然后,我右键单击该任务并选择“标记完成”。该任务现在在 Tasks 文件夹中显示为已完成,如下所示(注意 Date Completed 列 - “11/6/2018”):
或者像这样在待办事项列表文件夹中:
现在,如果我取消选中待办事项列表中任务左侧的复选框,该任务将返回活动状态。如果我右键单击已完成的任务并再次选择“标记完成”,也会发生同样的情况。
重新激活的任务如下所示:
接下来,我通过对下面的图形 api 进行两次调用(来自图形资源管理器)将任务标记为已完成
PATCH https://graph.microsoft.com/beta/me/outlook/tasks({id})
{
"status": "completed"
}
或者
POST https://graph.microsoft.com/beta/me/outlook/tasks({id})/complete
回到 Outlook,一切看起来都还不错,只是完成日期现在是 11 月 5 日。我希望具有与以前相同的行为,并将 11 月 6 日作为完成日期。这是第一个问题。
第二个问题是,如果我现在尝试重新激活任务,它会进入一个奇怪的状态。我已经尝试了上述两个重新激活选项,还尝试进行新的 PATCH 调用,将状态设置回“notStarted”。它们都产生相同的行为,任务被列为活动和已完成:
这是在尝试重新激活它失败后任务的样子:
这是一个错误还是我忘记了什么?
解决方案
回到 Outlook,一切看起来都还不错,只是完成日期现在是 11 月 5 日。我希望具有与以前相同的行为,并将 11 月 6 日作为完成日期。这是第一个问题。
日期问题可能是由 API 中的时区句柄逻辑引起的。您可以明确设置日期时间。
{
"status": "completed",
"completedDateTime": {
"dateTime": "2018-11-12T00:00:00.0000000",
"timeZone": "UTC"
}
}
第二个问题是,如果我现在尝试重新激活任务,它会进入一个奇怪的状态。我已经尝试了上述两个重新激活选项,还尝试进行新的 PATCH 调用,将状态设置回“notStarted”。它们都产生相同的行为,任务被列为活动和已完成:
虽然不确定它是否是设计使然。但是,理论上,在已完成的列表中保留一个,在待办事项列表中保留一个是没有问题的。这可以有一个跟踪历史。Reactive也不是一个好的操作行为。
推荐阅读
- python - 在循环中暂停 python 代码并检查图形窗口
- grails - 如何在默认的 grails 4 应用程序中查看 h2 数据库
- swift - Admob adViewDidReceiveAd 在 TableViewCell 中不起作用
- regex - 正则表达式模式:如何检查两边都没有的单词
- haskell - 您如何在参数中使用 StdGen 类型?
- r - Desktop Application to Run R Scripts
- python - Insert 3D model in mplot3D
- hyperledger-fabric - 动态地将频道添加到现有网络
- r - Using igraph/network packages, how do I determine if network is fully connected (each vertex can reach each other vertex somehow)
- typescript - 打字稿:将类型转换为 json 对象时,“类型中缺少属性 getName”