我们来对接蓝凌OA - 连通检查

蓝凌OA - 连通检查

题记

  • 开发入场,噼里啪啦,顾问将收集到的一手的也好、二手的也有,各系统对接方案丢了过来
    • 这个我给你拉到群里了,不会的可以问那个谁谁
    • 这个你看今天能不能先拉通,都列在接口清单中了,你补充下完成日期
    • 还有这个也比较紧急,周末得加班搞搞,完成的更新状态
  • 带着疲惫的身心,刚刚撤场,没有庆功宴,没有鲜花和掌声,紧接着又是一个项目轮回
    • 习以为常吗!已卑微到羡慕别人加班有工资
    • 对于进度,实施阶段压在了开发端,对于不清晰的需求,随意的蓝图,弱矩阵管理中,开发即使占理却不占优势
  • 月明星稀的深夜,这万家灯火的办公楼内,是追赶进度的牛马
  • 接下来看某司的蓝凌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
      
      
    • 测试成功Alt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UCoding

说话好听~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值