用友NC-OA平台API参考手册

发布时间 : 星期一 文章用友NC-OA平台API参考手册更新完毕开始阅读

errorNumber errorMessage 错误号 错误信息 long String 参见服务错误号表 1.1.5.2 服务异常(ServiceException)

参数 errorNumber errorMessage 名称 错误号 错误信息 数据类型 long String 长度 备注 参见服务错误号表 1.2 验证服务

服务名称:authorityService

WSDL:http://{host}:{port}/seeyon/services/authorityService?wsdl 1.2.1 登录验证

1.2.1.1 身份验证令牌实体(UserToken)

参数 id 名称 令牌ID 数据类型 String 长度 36 备注 用户名和密码验证未通过时值为-1。 所有服务都必须提供合法的令牌ID方可调用。 1.2.1.2 身份验证

使用用户名和密码进行身份验证。

用户名不能更改,必须使用service-admin,缺省密码为123456,可以在配置文件里进行修改。

在用友NC-OA_HOME/base/conf下建立一个名称为service.properties的文本文件(运行一次验证服务的authenticate方法会自动创建),内容如下: password=123 就可以把验证密码修改为123。 为了设置方便,缺省情况下密码使用明文保存,如果为了安全,可以保存密码的MD5值,建立下面的service.properties文件: password= e10adc3949ba59abbe56e057f20f883e encode=1 方法:authenticate 参数: 参数 username password

数据类型 String String 说明 服务用户名 服务用户密码

返回值:

UserToken

返回身份验证令牌。返回的令牌可以多次使用,有效期为15分钟,每一次有效请求令牌的有效期延长10分钟,最长15分钟;没有必要每次请求前都登录。 示例:

远程调用:

AuthorityServiceStub.Authenticate req = new AuthorityServiceStub.Authenticate(); req.setUserName(\); req.setPassword(\); AuthorityServiceStub stub = new AuthorityServiceStub(); AuthorityServiceStub.AuthenticateResponse resp = stub.authenticate(req); AuthorityServiceStub.UserToken token = resp.get_return(); if(token.getId()!=-1) { } import com.seeyon.v3x.services.AuthorityService; import com.seeyon.v3x.services.impl.AuthorityServiceImpl; import com.seeyon.v3x.services.UserToken; … AuthorityService service = new AuthorityServiceImpl(); UserToken token = service.authenticate(userName, password); 本地调用:

1.3 组织模型管理

组织模型管理服务提供外部系统组织模型同步到用友NC-OA的支持,外部系统可以通过服务调用更新用友NC-OA的人员、部门、岗位和职务级别数据。 1.3.1 单位管理

1.3.1.1 取得单位ID 按照单位名称取单位的ID。 方法:getAccountId 参数:

参数 token accountName 数据类型 String String 说明 登录验证后获取的身份令牌。 单位名称 返回值:

ServiceResponse

成功返回单位ID,否则返回-1。

示例: 远程调用:

AccountServiceStub.GetAccountIdResponse resp = stub.getAccountId(req); AccountServiceStub.ServiceResponse r = resp.get_return(); String accountId = r.getResult(); import com.seeyon.v3x.services organization.AccountService; import com.seeyon.v3x.services organization.impl.AccountServiceImpl; import com.seeyon.v3x.services.UserToken; … AccountService service = new AccountServiceImpl(); ServiceResponse resp = service.getAccountId(accountName); AccountServiceStub stub = new AccountServiceStub(); AccountServiceStub.GetAccountId req = new AccountServiceStub.GetAccountId(); req.setAccountName(accountName); 本地调用:

1.3.2 人员管理

1.3.2.1 人员实体(PersonInfoParam_All)

参数 accountId loginName 名称 单位ID 登录名 数据类型 long String 长度 40 备注 非空。 非空。 只能是数字、字母、下划线、和英文点号的组合。 不能以英文点号作为开始符和结束符。 登录名在集团内唯一。 不能采用如下系统中已存在的登录名:system、admin、manager、user、tomcat、jetspeed、subsite。 集团版不能为group-admin。 企业版不能为admin1。 passWord staffNumber trueName departmentName 密码 员工编号 真实姓名 部门路径名称 String String String String[] 20 40 非空。 6-50个字符,区分英文大小写。 不能包含字符|, 部门名称格式:根节点名称/....../父部门名称/部门名称。 不能包含字符|, 各级部门名称长度不能超过40。 ocupationName secondOcupationName 主岗位名称 副岗名称 String String[] 40 不能包含字符|, 副岗名称格式:根节点名称/....../父部门名称/部门名称_岗位名称。 部门名称不能包含字符|, 各级部门名称不能超过40。

岗位名称不能包含字符|, 岗位名称不能超过40。 副岗不能与主岗重复。 otypeName familyPhone officePhone mobilePhone familyAddress email discursion identity sex 职务级别名称 家庭电话 办公电话 移动电话 家庭地址 电子邮件 描述 身份证号 性别 String String String String String String String String 20 20 20 70 40 1000 标准电子邮件格式如: xxx@xxx.xxx 有效身份证号码 -1 为无性别 1 为男 2 为女 birthday per_sort 出生日期 排序号 String String 日期格式:yyyy-mm-dd 1-999999之间的整数 String 40 不能包含字符”\\/|><:*?’ 1.3.2.2 方法列表 名称 create update updateByLoginName delete deleteByLoginName enable enableByLoginName setPassword setPasswordByLoginName 1.3.2.3 创建人员

按照person实体中的人员信息创建人员。

当人员所属部门、职务级别、岗位名称为空、部门不存在或部门状态未停用时,人员设置为停用。 当人员所属副岗的岗位或部门不存在时,将忽略此副岗。 方法:create 参数:

参数 token person

说明 创建人员 按人员ID修改人员信息 按人员登录名修改人员信息 按人员ID删除人员 按人员登录名删除人员 按人员ID启用/禁用人员 按人员登录名启用/禁用人员 按人员ID设置人员密码 按人员登录名设置人员密码 数据类型 String PersonInfoParam_All 说明 登录验证后获取的身份令牌。 人员信息

联系合同范文客服:xxxxx#qq.com(#替换为@)