服务地址 

更多资料下载请点-->  蓝凌开发资料大全

http://[IP]:[PORT] /sys/webservice/kmReviewWebserviceService?wsdl

接口简介

外部系统启动审批流程。包含一个服务接口。

addReview(KmReviewParamterForm webForm

  1. 接口说明
    1. addReview(KmReviewParamterForm webForm)
    2. 接口参数webForm信息

序号

属性名

缺省值

1

docSubject

字符串(String

文档标题

2

fdTemplateId

字符串(String

文档模板id

3

docContent

字符串(String

文档的富文本内容

4

formValues

字符串(Json

流程表单数据

5

docStatus

字符串(String

"20"

文档状态,可以为草稿("10")或者待审("20")两种状态,默认为待审

6

docCreator

字符串(Json

流程发起人,为单值,格式详见人员组织架构的定义说明

7

fdKeyword

字符串(Json

文档关键字,格式为["关键字1", "关键字2"...]

8

docProperty

字符串(Json

辅类别,格式为["辅类别1ID", "辅类别2ID"...]

9

flowParam

字符串(Json

流程参数

10

attachmentForms

链表(List<AttachmentForm>

附件列表

流程表单数据formValues

流程表单数据是采用Json格式传输,而流程表单原始数据的存储格式为xml,定义在km_review_main表中的extend_data_xml字段里,因此开发人员需要提取出流程表单中输入项的控件ID和控件值,组装成Json格式。其中明细表是按列来设置,格式为"明细表id.列id":["列值1","列值2","列值3"...],每列单独组合成一个集合。 

流程参数flowParam的定义

序号

属性名

缺省值

1

auditNode

字符串(Json

审批意见

2

futureNodeId

字符串(Json

流向下一节点的ID,需要人工决策时设置此参数

3

changeNodeHandlers

字符串(Json

节点的处理人,格式为["节点名1:处理人ID1; 处理人ID2...","节点名2:处理人ID1; 处理人ID2..."...],需要修改处理人时设置此参数

说明:

流程参数是采用JSon格式传输,格式为{auditNode:"审批意见", futureNodeId:"节点名", changeNodeHandlers:["节点名1:用户ID1; 用户ID2...", "节点名2:用户ID1; 用户ID2..."...]}。

附件AttachmentForm的定义

序号

属性名

缺省值

1

fdKey

字符串(String

"fdAttachment"

附件的关键字,富文本模式下为"fdAttachment",表单模式下为附件控件的id

2

fdFileName

字符串(String

附件文件名

3

fdAttachment

字节数组(byte[]

附件内容,格式为字节编码

支持的时间格式

时间字段是采用字符串形式传输,格式为"yyyy-MM-dd HH:mm:ss"或者"yyyy/MM/dd HH:mm:ss"。

人员组织架构的说明

人员组织架构是采用JSon格式传输。

单值的格式为{类型: 值}。

多值的格式为[{类型1: 值1} ,{类型2: 值2}...]。

支持的类型有主键(Id)、编号(PersonNo、DeptNo、PostNo、GroupNo)、登录名(LoginName)、关键字(Keyword)、LDAP(LdapDN),其中Person表示个人,Dept表示机构/部门,Post表示岗位,Group表示群组。

/**
   这是在EKP调用websservice生成流程例子
 * 创建文档及流程数据
 */
KmReviewParamterForm createForm() throws Exception {
	KmReviewParamterForm form = new KmReviewParamterForm();

	// 文档模板id
	form.setFdTemplateId("131eb0cfd7db55e6980e9ce4985a1387");

	// 文档标题
	form.setDocSubject("物料采购申请单");

	// 流程发起人
	form.setDocCreator("{\"PersonNo\": \"00012\"}");

	// 文档关键字
	form.setFdKeyword("[\"物料\", \"采购\"]");

	// 流程表单
	String formValues = "{\"fd_2eddbf023c8292\":\"张三\", \"fd_2edd2f83f68242\":\"咨询部\", \"fd_2edd2fa69f6fc6\":\"\", \"fd_2eddbf09f9bc96\":\"2011-10-26\", \"fd_2edd2fb18e7f90\":{\"fd_2edd2fb18e7f90.fd_2eddbef4da4688\":[\"555555\",\"777777\"], \"fd_2edd2fb18e7f90.fd_2edd2fc8001062\":[\"444444\",\"666666\"], \"fd_2edd2fb18e7f90.fdId\":[\"1332472122898ac618f3e22460cab595\",\"13324721228b50c184d82c44ceca5301\"]}}";
	form.setFormValues(formValues);

	// 流程参数
	String flowParam = "{auditNode:\"请审核\", futureNodeId:\"N7\", changeNodeHandlers:[\"N7:1183b0b84ee4f581bba001c47a78b2d9;131d019fbac792eab0f0a684c8a8d0ec\"]}";
	form.setFlowParam(flowParam);

	List<AttachmentForm> attForms = createAllAtts();
	form.getAttachmentForms().addAll(attForms);

	return form;
}

/**
 * 创建附件列表
 */
List<AttachmentForm> createAllAtts() throws Exception {

	List<AttachmentForm> attForms = new ArrayList<AttachmentForm>();

	String fileName = "采购订单说明书1.doc";
	AttachmentForm attForm01 = createAtt(fileName);
	fileName = "采购订单说明书2.doc";
	AttachmentForm attForm02 = createAtt(fileName);

	attForms.add(attForm01);
	attForms.add(attForm02);

	return attForms;
}

/**
 * 创建附件对象
 */
AttachmentForm createAtt(String fileName) throws Exception {
	AttachmentForm attForm = new AttachmentForm();
	attForm.setFdFileName(fileName);
	// 设置附件关键字,表单模式下为附件控件的id
	attForm.setFdKey("fd_2eddbf161a3268");

	byte[] data = file2bytes("C:\\" + fileName);
	attForm.setFdAttachment(data);

	return attForm;
}

/**
 * 将文件转换为字节编码
 */
byte[] file2bytes(String fileName) throws Exception {
	InputStream in = new FileInputStream(fileName);
	byte[] data = new byte[in.available()];

	try {
		in.read(data);
	} finally {
		try {
			in.close();
		} catch (IOException ex) {
		}
	}

	return data;
}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐