
目 录
目 录 2
4 单点登录 3
4.1 注册登录key访问接口 3
4.2 访问NC-EHR业务功能 3
5. 代办事项列表信息 4
6 单一代办事项信息展示 4
4 单点登录
由OA系统客户端提供登录参数,到OA服务器,OA服务端通过的web服务方式向NC服务端注册申请登录key,OA服务端将登录key作为响应结果返回到的OA客户端,作为之后访问NC-EHR系统的依据。
| 步骤 | 说明 | 源系统 | 目的系统 | |
| 1 | 最终用户登录请求 | OA客户端 | OA服务端 | |
| 2 | 登录key申请 | OA服务端 | NC服务 | |
| 3 | 访问NC服务 | OA客户端 | NC服务 |
通过NC提供的机制。OA 客户端使用HTTP协议GET或POST方式向指定的地址提交如下格式的参数,注册用于访问NC-EHR系统的登录key. (http://NC_IP/service/RegisterServlet)
| 参数 | 意义 |
| accountcode | 帐套编码 |
| workdate | 工作日期 |
| language | 登录语言 |
| usercode | 用户编码 |
| pwd | 密码 |
| key | 生成的唯一key。 |
一旦注册完成,可直接使用 http://NC_IP/login.jsp?key=注册所使用key略过登录界面,直接进入NC主界面。
5. 代办事项列表信息
NC 提供以web service方式获取代办事项信息列表的接口
OA系统根据web service接口和对应的用户信息,得到用户所对应的代办事务信息列表,展现到OA系统中。
传到NC service接口的参数信息包括:代办单据PK,用户pk, 单据类型, 主题, 发送人。
数据获取方式如
<%
String endpoint = "http://NC_IP /user/services/ReadBusinessService";
Service service = new Service();
Call call = (Call) service.createCall();
String userPk = "0001AA100000000033W6";//nc用户的pk
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName("readNCPeding");
call.addParameter("userPK", XMLType.XSD_STRING, ParameterMode.IN);
call.setReturnType(XMLType.SOAP_ARRAY12);
String[][] ret = (String[][]) call.invoke(new Object[] {userPk});
| %> |
NC系统提供以web service方式获取指定代办事项的接口。指定访问参数。在NC系统中打开指定代办事项。
传到NC service接口的参数信息包括:NC用户主键,代办事务信息PK。
数据获取展示方式如
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page contentType="text/html; charset=UTF-8"%>
<%@ page import="java.net.URL"%>
<%@ page import="java.net.URLConnection"%>
<%@ page import="java.net.HttpURLConnection"%>
<%@ page import="java.util.Enumeration"%>
<%@ page import="java.util.*"%>
<%
Random rd = new Random();
int i = rd.nextInt(100)+1;
//为该用户设置一个默认操作帐套,可能需要根据项目的实际情况进行修改
//如果用户已经通过认证,该方法会取得用户的用户名
URL url = new URL("http://127.0.0.1/service/RegisterServlet?key="+i+"&accountcode=dacc&language=simpchn&usercode=zhwj&pwd=1&pkcorp=1001");
URLConnection uc = url.openConnection();
uc.setDoOutput(true);
HttpURLConnection httpconn = (HttpURLConnection) uc;
String str_return = httpconn.getResponseMessage();
//当注册中心成功注册了用户本次登录的用户信息时,将会返回“OK”
if (str_return.equals("OK")) {
out.println("start______");
out.println("");
}
out.println("end___");
%>
