题记
- 开发入场,噼里啪啦,顾问将收集到的一手的也好、二手的也有,各系统对接方案丢了过来
- 这个我给你拉到群里了,不会的可以问那个谁谁
- 这个你看今天能不能先拉通,都列在接口清单中了,你补充下完成日期
- 还有这个也比较紧急,周末得加班搞搞,完成的更新状态
- 带着疲惫的身心,刚刚撤场,没有庆功宴,没有鲜花和掌声,紧接着又是一个项目轮回
- 习以为常吗!已卑微到羡慕别人加班有工资
- 对于进度,实施阶段压在了开发端,对于不清晰的需求,随意的蓝图,弱矩阵管理中,开发即使占理却不占优势
- 月明星稀的深夜,这万家灯火的办公楼内,是追赶进度的牛马
- 接下来看某司的蓝凌OA对接方案
一个方案
- 一个链接
http://**.**.com/sys/webservice/kmReviewWebserviceService?wsdl
- 一些参考代码
/** * 创建文档及流程数据 */ 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; }
分析
- 这是一个webservice风格接口
- 调整状态后,打开工具
- 初步创建
- 发起创建流程请求
- 一个公共天气接口的例子
- 如果链接正确,测试工具是没有问题的
- 如果链接正确,测试工具是没有问题的
- 调整状态后,打开工具
- Linux发起webService请求
-
沟通后得知,白名单受限,只配置了测试机
-
当下时间紧急,只能在测试机上检查
-
测试机是linux环境
-
倒是难到了我,好在,有了办法
-
构建报文
curl -H 'Content-Type: text/xml;charset=UTF-8;' -d '<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <addReview xmlns="http://webservice.review.km.kmss.landray.com/"> <arg0 xmlns=""> <docCreator>{"PersonNo":"EER"}</docCreator> <docSubject>合同提交测试</docSubject> <fdTemplateId>1930579284c4c3911****</fdTemplateId><formValues>{"fd_39652a675cd784":"2024-11-22","fd_39a67091a9e0ae":"w12071","fd_39abe40cce67f0":"1","fd_39d7bb90a2082c":"12"}</formValues> </arg0> </addReview> </soap:Body> </soap:Envelope>' http://oa.***.com/sys/webservice/kmReviewWebserviceService
-
测试成功
-