VersionOne:我们需要使用哪个API从TeamRoom中删除用户/成员?

问题描述

我们需要使用哪个API从TeamRoom中删除用户/成员?我无法为此操作找到正确的REST API。

我也尝试使用Python v1pysdk。似乎当前不支持多值删除操作。

不适用于此Python代码

from v1pysdk import V1Meta

with V1Meta(
  instance_url = 'https://www.versiononehost.com/SandBox',password = '1.dfgdJHKLLLKhbHbHbhj',use_password_as_token=True,) as v1:

    teamRoom = v1.TeamRoom.where(ID='TeamRoom:61092')
    teamRoom.Participants.remove (v1.Member.where(ID='Member:2666')) #Remove operation is not working
    v1.commit()

    print ("Complete...")

在下面的Java代码中可以正常工作,但是我们团队中不使用Java。所以我想找到正确的REST API或使Python脚本正常工作?任何帮助将不胜感激。

在此Java代码中正常工作:

import com.versionone.Oid;
import com.versionone.apiclient.Asset;
import com.versionone.apiclient.Query;
import com.versionone.apiclient.Services;
import com.versionone.apiclient.V1Connector;
import com.versionone.apiclient.interfaces.IAssetType;
import com.versionone.apiclient.interfaces.IAttributeDeFinition;
import com.versionone.apiclient.interfaces.IServices;
import com.versionone.apiclient.services.QueryResult;

public class VersionOneAPITeamRoom {
    public static void main(String[] args) {
        try {
            V1Connector connector = V1Connector.withInstanceUrl("https://www.versiononehost.com/SandBox")
                    .withUserAgentHeader("AppName","1.0").withAccesstoken("1.dfgdJHKLLLKhbHbHbhj=").build();

            IServices services = new Services(connector);

            Oid teamRoomId = services.getoid("TeamRoom:61092");
            Query query = new Query(teamRoomId);
            IAssetType storyType = services.getMeta().getAssetType("TeamRoom");
            IAttributeDeFinition participantsAttribute = storyType.getAttributeDeFinition("Participants");
            query.getSelection().add(participantsAttribute);
            
            QueryResult result = services.retrieve(query);
            
            Asset teamRoom = result.getAssets()[0];
            
            teamRoom.removeAttributeValue(participantsAttribute,"Member:2666");
            services.save(teamRoom);
            
            System.out.println("Complete...");
            
        } catch (Exception e) {
            e.printstacktrace();
        }
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)