使用sbt java api切换完成的待办事项

时间:2014-03-13 14:39:40

标签: java ibm-connections ibm-sbt

我正在尝试使用SBT Java API在IBM Connections中切换todo项目以完成/不完整。 我设法将todo项目设置为完成,但如何将其更改为不完整?

        todoNode = activityService.getActivityNode( "856b9450-b3d2-4b41-a198-46feeb3772a8" );
        System.out.println("Title " + todoNode.getTitle());

        if ( todoNode.getCategoryFlagCompleted() == null) {
            List<String> flags = new java.util.ArrayList();
            flags.add("Completed");
            todoNode.setFlags(flags);
        }

        activityService.updateActivityNode(todoNode);

非常感谢

2 个答案:

答案 0 :(得分:1)

来自Connections REST API文档:

  

要完成活动,请添加此标记。如果不存在,则活动未完成。

因此,要将活动再次标记为不完整,只需更新ActivityNode而不添加“已完成”标记。

todoNode = activityService.getActivityNode( "856b9450-b3d2-4b41-a198-46feeb3772a8" );
System.out.println("Title " + todoNode.getTitle());

if ( todoNode.getCategoryFlagCompleted() != null) {
    todoNode.setFlags(new java.util.ArrayList());
}

activityService.updateActivityNode(todoNode);

答案 1 :(得分:0)

刚遇到同样的问题,但似乎你可以使用空标志来使它工作。

    todoNode = activityService.getActivityNode( "856b9450-b3d2-4b41-a198-46feeb3772a8" );
    System.out.println("Title " + todoNode.getTitle());
    if ( todoNode.getCategoryFlagCompleted() == null) {
        List<String> flags = new java.util.ArrayList();
        flags.add("");
        todoNode.setFlags(flags);
    }
    activityService.updateActivityNode(todoNode);

不确定它是否适用于Java,因为我在JSSS中使用API​​。 此外,此解决方案还将删除其他标记,例如&#34;已删除&#34;。 您应该使用getCategoryFlagDelete()来重新检查活动&#34;标记字段&#34;正常。