You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

750 lines
30 KiB
Plaintext

2 years ago
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.BaseBean" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="com.alibaba.fastjson.JSONArray" %>
<%@ page import="java.util.regex.Pattern" %>
<%@ page import="java.util.regex.Matcher" %>
<%@ page import="java.io.*" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.*" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="org.apache.http.impl.client.CloseableHttpClient" %>
<%@ page import="org.apache.http.impl.client.HttpClients" %>
<%@ page import="org.apache.http.client.methods.HttpPost" %>
<%@ page import="com.alibaba.fastjson.JSON" %>
<%@ page import="org.apache.http.entity.StringEntity" %>
<%@ page import="org.apache.http.client.methods.CloseableHttpResponse" %>
<%@ page import="org.apache.http.HttpStatus" %>
<%@ page import="org.apache.http.HttpEntity" %>
<%@ page import="org.apache.http.util.EntityUtils" %>
<%@ page import="org.apache.http.client.ClientProtocolException" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="java.net.URL" %>
<%@ page import="java.net.HttpURLConnection" %>
<%@ page import="org.apache.http.HttpException" %>
<%@ page import="org.apache.http.client.HttpClient" %>
<%@ page import="org.apache.commons.httpclient.methods.PostMethod" %>
<%@ page import="org.apache.commons.httpclient.params.HttpMethodParams" %>
<%@ page import="org.apache.http.NameValuePair" %>
<%@ page import="org.apache.http.message.BasicNameValuePair" %>
<%@ page import="org.apache.http.client.entity.UrlEncodedFormEntity" %>
<%@ page import="weaver.rsa.security.RSA" %>
<%@ page import="java.security.interfaces.RSAPublicKey" %>
<%@ page import="java.security.KeyFactory" %>
<%@ page import="java.security.spec.X509EncodedKeySpec" %>
<%@ page import="javax.crypto.Cipher" %>
<%@ page import="org.apache.commons.codec.binary.Base64" %>
<%@ page import="java.nio.charset.StandardCharsets" %>
<%@ page import="org.apache.http.impl.client.HttpClientBuilder" %>
<%@ page import="org.apache.http.client.methods.HttpGet" %>
<%@ page import="com.engine.common.util.ParamUtil" %>
2 years ago
<%@ page import="com.wbi.util.StringUtil" %>
<%@ page import="org.json.JSONException" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Simple JSP Form</title>
</head>
<body>
2 years ago
<%!
//获取分页sql
public static String getPaginationSql(String sql, String orderby, int pageNo, int pageSize) {
String execSql = "";
RecordSet rs = new RecordSet();
String dbType = rs.getDBType();
// String dbType = "oracle";
// String dbType = "sqlserver";
int firstResult = 0;
int endResult = 0;
// 返回分页sql
if("oracle".equals(dbType)){ // rownum
firstResult = pageNo * pageSize + 1;
endResult = (pageNo - 1) * pageSize;
execSql = " select * from ( select tabUN2.*,rownum as my_rownum from ( select tableUN.*,rownum as r from ( " + sql
+ orderby + ") tableUN " + ") tabUN2 where r < " + firstResult + " ) where my_rownum > " + endResult;
}else if("sqlserver".equals(dbType)){
sql="select *,row_number()OVER("+orderby+") as rn from ("+sql+") newt";
execSql = "select * from ( " +
sql+")fy " +
" where rn between ("+pageNo+"-1)*"+pageSize+"+1 and "+pageNo+"*"+pageSize+" ";
}else { // 使用 ROW_NUMBER OVER()分页
firstResult = pageNo * pageSize + 1;
endResult = (pageNo - 1) * pageSize;
execSql = " select * from ( select tabUN2.*,rownum as my_rownum from ( select tableUN.*,rownum as r from ( " + sql
+ orderby +") tableUN ) tabUN2 where r < " + firstResult + " ) where my_rownum > " + endResult;
}
rs.writeLog("execSql---->"+execSql);
return execSql;
}
private boolean isEmpty(String str) {
if ("".equals(str) ||"(null)".equals(str) || str == null) {
return true;
} else {
return false;
}
}
/**
* 获取指定类型的src值的集合
* @param htmlStr
* @param type 标签名称
* @return
* 简历
*/
public static Set<String> getSrcStr(String htmlStr, String type) {
Set<String> srcs = new HashSet<String>();
String src = "";
Pattern p_src;
Matcher m_src;
// String regEx_img = "<img.*src=(.*?)[^>]*?>"; //图片链接地址
String regEx_src = "<"+type+".*src\\s*=\\s*(.*?)[^>]*?>";
p_src = Pattern.compile
(regEx_src, Pattern.CASE_INSENSITIVE);
m_src = p_src.matcher(htmlStr);
while (m_src.find()) {
// 得到<img />数据
src = m_src.group();
// 匹配<img>中的src数据
Matcher m = Pattern.compile("src\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(src);
while (m.find()) {
srcs.add(m.group(1));
}
}
return srcs;
}
public User getUser(int uid){
User user = new User();
RecordSet rs = new RecordSet();
if (uid == 1)
rs.executeQuery("select * from hrmresourcemanager where id=?", uid);
else {
rs.executeQuery("select * from hrmresource where id=?", uid);
}
String userid = "";
if (rs.next()) {
userid = rs.getString("id");
user.setUid(rs.getInt("id"));
user.setLogintype("1");
user.setLoginid(rs.getString("loginid"));
user.setFirstname(rs.getString("firstname"));
user.setLastname(rs.getString("lastname"));
user.setAliasname(rs.getString("aliasname"));
user.setTitle(rs.getString("title"));
user.setTitlelocation(rs.getString("titlelocation"));
user.setSex(rs.getString("sex"));
String langid = rs.getString("systemlanguage");
user.setLanguage(Util.getIntValue(langid, 0));
user.setTelephone(rs.getString("telephone"));
user.setMobile(rs.getString("mobile"));
user.setMobilecall(rs.getString("mobilecall"));
user.setEmail(rs.getString("email"));
user.setCountryid(rs.getString("countryid"));
user.setLocationid(rs.getString("locationid"));
user.setResourcetype(rs.getString("resourcetype"));
user.setStartdate(rs.getString("startdate"));
user.setEnddate(rs.getString("enddate"));
user.setContractdate(rs.getString("contractdate"));
user.setJobtitle(rs.getString("jobtitle"));
user.setJobgroup(rs.getString("jobgroup"));
user.setJobactivity(rs.getString("jobactivity"));
user.setJoblevel(rs.getString("joblevel"));
user.setSeclevel(rs.getString("seclevel"));
user.setUserDepartment(Util.getIntValue(rs.getString("departmentid"),0));
user.setUserSubCompany1(Util.getIntValue(rs.getString("subcompanyid1"),0));
user.setUserSubCompany2(Util.getIntValue(rs.getString("subcompanyid2"),0));
user.setUserSubCompany3(Util.getIntValue(rs.getString("subcompanyid3"),0));
user.setUserSubCompany4(Util.getIntValue(rs.getString("subcompanyid4"),0));
user.setManagerid(rs.getString("managerid"));
user.setAssistantid(rs.getString("assistantid"));
user.setPurchaselimit(rs.getString("purchaselimit"));
user.setCurrencyid(rs.getString("currencyid"));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String lastLoginDate = sdf.format(new Date());
user.setLastlogindate(lastLoginDate);
user.setLogintype("1");
user.setAccount(rs.getString("account"));
}
return user;
}
public String httpPostRequest(String param,String url,String token){
BaseBean baseBean = new BaseBean();
JSONObject jsonObject = new JSONObject();
String responseBody="";
try {
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost(url);
JSONObject jsonString = JSON.parseObject(param);
//设置请求体参数
StringEntity entity = new StringEntity(param,"utf-8");
baseBean.writeLog("entity-param->"+param);
baseBean.writeLog("entity-->"+entity);
entity.setContentEncoding("utf-8");
baseBean.writeLog("entity-utf-8->"+entity);
httpPost.setEntity(entity);
//设置请求头部
httpPost.setHeader("Content-Type", "application/json");
if(token != null && !"".equals(token)){
httpPost.setHeader("Authorization",token);
}
//执行请求,返回请求响应
CloseableHttpResponse response = httpClient.execute(httpPost);
//请求返回状态码
int statusCode = response.getStatusLine().getStatusCode();
baseBean.writeLog("statusCode状态码->"+statusCode);
//请求成功
if (statusCode == HttpStatus.SC_OK && statusCode <= HttpStatus.SC_TEMPORARY_REDIRECT) {
//取出响应体
HttpEntity entity2 = response.getEntity();
//从响应体中解析出token
responseBody = EntityUtils.toString(entity2, "utf-8");
// jsonObject = JSONObject.parseObject(responseBody);
baseBean.writeLog("responseBody->"+responseBody);
// baseBean.writeLog("jsonObject->"+jsonObject);
//token = jsonObject.getString("access_token");
} else {
//请求失败
throw new ClientProtocolException("请求失败,响应码为:" + statusCode);
}
} catch (Exception e) {
e.printStackTrace();
}
return responseBody;
}
/**
* 发送http get请求
*/
public static String httpGet(String url,Map<String,String> headers,String encode){
BaseBean bb = new BaseBean();
if(encode == null){
encode = "utf-8";
}
CloseableHttpResponse httpResponse = null;
CloseableHttpClient closeableHttpClient = null;
String content = null;
//since 4.3 不再使用 DefaultHttpClient
try {
closeableHttpClient = HttpClientBuilder.create().build();
HttpGet httpGet = new HttpGet(url);
//设置header
if (headers != null && headers.size() > 0) {
for (Map.Entry<String, String> entry : headers.entrySet()) {
httpGet.setHeader(entry.getKey(),entry.getValue());
}
}
bb.writeLog("url="+url+"header="+headers+"encode="+encode);
httpResponse = closeableHttpClient.execute(httpGet);
HttpEntity entity = httpResponse.getEntity();
content = EntityUtils.toString(entity, encode);
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
httpResponse.close();
} catch (IOException e) {
e.printStackTrace();
}
}
try { //关闭连接、释放资源
closeableHttpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
return content;
}
/**
* 向指定 URL 发送POST方法的请求
*
* @param url 发送请求的 URL
* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @return 所代表远程资源的响应结果
*/
public static String sendPost(String url, String param) {
BaseBean bb = new BaseBean();
String result = "";
PrintWriter out = null;
BufferedReader in = null;
HttpURLConnection connection = null;
try {
URL postUrl = new URL(url);
bb.writeLog("getUrl-->"+postUrl);
// 打开和URL之间的连接
connection = (HttpURLConnection) postUrl.openConnection();
// 在connect之前设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
connection.setRequestProperty("Charsert", "UTF-8");
connection.setConnectTimeout(15000);
connection.setReadTimeout(60000);
// 发送POST请求必须设置如下两行参数要放在http正文内
connection.setDoOutput(true);
connection.setDoInput(true);
// 默认是 GET方式
connection.setRequestMethod("POST");
// Post 请求不使用缓存
connection.setUseCaches(false);
// 配置本次连接的Content-typeform表单是"application/x-www-form-urlencoded"json是"application/json"等
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.connect();
// 参数要放在http正文内
//1.获取URLConnection对象对应的输出流
out = new PrintWriter(connection.getOutputStream());
//2.中文有乱码的需要将PrintWriter改为如下
//out=new OutputStreamWriter(conn.getOutputStream(),"UTF-8")
out.print(param);
out.flush();
//也可以使用DataOutputStream
// DataOutputStream dos=new DataOutputStream(httpConn.getOutputStream());
// dos.writeBytes(param);
// dos.flush();
// dos.close();
// 定义BufferedReader输入流来读取URL的响应
if (connection.getResponseCode() == 200) {
in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
}
} catch (Exception e) {
bb.writeLog("发送 POST 请求出现异常!" + e);
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
if (connection != null) {
//关闭连接
connection.disconnect();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
* 发送 http post 请求参数以form表单键值对的形式提交。
*/
public static String httpPostForm(String url,Map<String,String> params, Map<String,String> headers,String encode){
BaseBean bb = new BaseBean();
if(encode == null){
encode = "utf-8";
}
String content = null;
CloseableHttpResponse httpResponse = null;
CloseableHttpClient closeableHttpClient = null;
try {
closeableHttpClient = HttpClients.createDefault();
HttpPost httpost = new HttpPost(url);
//设置header
if (headers != null && headers.size() > 0) {
for (Map.Entry<String, String> entry : headers.entrySet()) {
httpost.setHeader(entry.getKey(),entry.getValue());
}
}
bb.writeLog("url="+url+"header="+headers+"encode="+encode);
bb.writeLog("params="+params);
//组织请求参数
List<NameValuePair> paramList = new ArrayList <NameValuePair>();
if(params != null && params.size() > 0){
Set<String> keySet = params.keySet();
for(String key : keySet) {
paramList.add(new BasicNameValuePair(key, params.get(key)));
}
}
httpost.setEntity(new UrlEncodedFormEntity(paramList, encode));
httpResponse = closeableHttpClient.execute(httpost);
HttpEntity entity = httpResponse.getEntity();
content = EntityUtils.toString(entity, encode);
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
httpResponse.close();
} catch (IOException e) {
e.printStackTrace();
}
}
try { //关闭连接、释放资源
closeableHttpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
return content;
}
/**
* 公钥加密
*
* @param content 内容
* @param publicKey 公钥
* @return 加密后的密文
* @throws Exception 异常信息
*/
public static String encrypt(String content, String publicKey) throws Exception {
//base64编码的公钥
byte[] decoded = org.apache.commons.codec.binary.Base64.decodeBase64(publicKey);
RSAPublicKey pubKey = (RSAPublicKey) KeyFactory.getInstance("RSA").generatePublic(new X509EncodedKeySpec(decoded));
//RSA加密
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.ENCRYPT_MODE, pubKey);
return Base64.encodeBase64String(cipher.doFinal(content.getBytes(StandardCharsets.UTF_8)));
}
2 years ago
public static String getPublicKey(Map<String, String> MachInfo){
2 years ago
BaseBean bb = new BaseBean();
String publicKey ="";
String API_KEY = Util.null2String(bb.getPropValue("tjbankEMobileSSO","key"));
//请求获取publicKey接口
Map<String,String> headers = new HashMap<>();
String url = Util.null2String(bb.getPropValue("tjbankEMobileSSO","publicKeyUrl"));
headers.put("API_KEY",API_KEY);
2 years ago
// headers.put("MACH_ID","123");
// headers.put("MACH_TYPE","0");
// headers.put("MACH_IP","127.0.0.1");
headers.put("MACH_ID",MachInfo.get("deviceId"));
headers.put("MACH_TYPE",MachInfo.get("clientType"));
headers.put("MACH_IP",MachInfo.get("param_ip"));
2 years ago
String msg = httpGet(url,headers,null);
bb.writeLog("===获取publickey返回值===="+msg);
try {
org.json.JSONObject resMsg = new org.json.JSONObject(msg);
bb.writeLog("===获取publickey返回值===="+resMsg);
if(resMsg.has("pubKey")){
publicKey = Util.null2String(resMsg.get("pubKey").toString());
}
}catch (Exception e){
e.getMessage();
}
return publicKey;
}
//获取TG
2 years ago
public static String getST(String tgt,String emobileUrl,Map<String, String> MachInfo){
2 years ago
BaseBean bb = new BaseBean();
String ST = "";
String retMsg = "";
Map<String,String> params = new HashMap<>();//参数
Map<String,String> headers = new HashMap<>();//headers
String API_KEY = Util.null2String(bb.getPropValue("tjbankEMobileSSO","key"));
//请求获取TG接口
String url = Util.null2String(bb.getPropValue("tjbankEMobileSSO","stUrl"));
bb.writeLog("==获取TG=="+url);
//移动端首页地址
bb.writeLog("==移动端首页地址=="+emobileUrl);
//获取TGT
params = new HashMap<>();//参数
params.put("tgt",tgt);
params.put("service",emobileUrl);
bb.writeLog("==STparams=="+params);
headers = new HashMap<>();//headers
headers.put("API_KEY",API_KEY);
2 years ago
// headers.put("MACH_ID","123");
// headers.put("MACH_TYPE","0");
// headers.put("MACH_IP","127.0.0.1");
headers.put("MACH_ID",MachInfo.get("deviceId"));
headers.put("MACH_TYPE",MachInfo.get("clientType"));
headers.put("MACH_IP",MachInfo.get("param_ip"));
2 years ago
try {
retMsg = httpPostForm(url,params,headers,null);
bb.writeLog("===获取ST返回值===="+retMsg);
org.json.JSONObject resMsg = new org.json.JSONObject(retMsg);
bb.writeLog("===获取ST返回值resMsg===="+resMsg);
if(resMsg.has("ST")){
ST = Util.null2String(resMsg.get("ST").toString());
}
bb.writeLog("===获取ST===="+ST);
}catch(Exception e){
throw new RuntimeException(e);
}
return retMsg;
}
2 years ago
public static String getSysUrl(String sysid){
RecordSet rs = new RecordSet();
String url = "-1";
//查询建模
rs.executeQuery("select * from uf_otherSysInfo where id = ?" ,sysid);
if (rs.next()){
url = Util.null2String(rs.getString("xtdz"));
}else {
return "-1";
}
url = url.trim();
if (!StringUtil.isBlank(url)){
//判断是否带?号
if (url.indexOf("?") == -1){
url = url+"?";
}else{
url = url+"&";
}
};
return url;
}
public static String getsysSSOurl(String sysid){
RecordSet rs = new RecordSet();
String url = "-1";
//查询建模
rs.executeQuery("select * from uf_otherSysInfo where id = ?" ,sysid);
if (rs.next()){
url = Util.null2String(rs.getString("hqdddz"));
}else {
return "-1";
}
new BaseBean().writeLog("hqdddz===="+url);
url = url.trim();
// if (!StringUtil.isBlank(url)){
// //判断是否带?号
// if (url.indexOf("?") == -1){
// url = url+"?";
// }else{
// url = url+"&";
// }
// };
return url;
}
2 years ago
%>
<%
2 years ago
// 检查是否有表单提交
String ST ="";//获取ST
String STurl ="";//获取ST
String loginid ="";//获取ST
if ("POST".equalsIgnoreCase(request.getMethod())) {
2 years ago
RecordSet rs = new RecordSet();
BaseBean bb=new BaseBean();
RSA rsa = new RSA();
2 years ago
out.print("123456");
if(1==1){
return;
}
2 years ago
Map<String,String> params = new HashMap<>();//参数
Map<String,String> headers = new HashMap<>();//headers
JSONArray array = new JSONArray();
List<String> decriptList = new ArrayList<>();
2 years ago
2 years ago
bb.writeLog("进入获取简历jsp-->");
2 years ago
STurl = request.getParameter("url");
loginid = request.getParameter("loginid");
Map<String, Object> paramsMap = ParamUtil.request2Map(request);
new BaseBean().writeLog("paramsMap===>"+JSONObject.toJSONString(paramsMap) );
String deviceId = Util.null2String(paramsMap.get("deviceId"));
String clientType = Util.null2String(paramsMap.get("clientType"));
if("2".equals(clientType)){
clientType = "0";
}else if("3".equals(clientType)){
clientType = "1";
}
String param_ip = Util.null2String(paramsMap.get("param_ip"));
new BaseBean().writeLog("paramsMap===>"+paramsMap );
new BaseBean().writeLog("deviceId===>"+deviceId );
new BaseBean().writeLog("clientType===>"+clientType );
HashMap<String, String> MachInfo = new HashMap<>();
MachInfo.put("deviceId",deviceId.isEmpty()?"123":deviceId);
MachInfo.put("clientType",clientType.isEmpty()?"1":clientType);
MachInfo.put("param_ip",param_ip.isEmpty()?"127.0.0.1":param_ip);
2 years ago
String login_id = "";
String user_password = "";
User user = HrmUserVarify.getUser(request, response);
int uid = user.getUID();
bb.writeLog("uid-->"+uid);
2 years ago
rs.executeQuery("select id,loginid,password,createtime from EmobileLoginDetail where loginid=?", loginid);
2 years ago
if(rs.next()){
login_id = Util.null2String(rs.getString("loginid"));
user_password = Util.null2String(rs.getString("password"));
}
bb.writeLog("login_id-->"+login_id);
bb.writeLog("user_password-->"+user_password);
//获取session
session = request.getSession(true);
String certified_token = Util.null2String(session.getAttribute("certified_token"));
bb.writeLog("获取sessionTGT=="+certified_token);
//获取cookie
Cookie[] cookies = request.getCookies();
bb.writeLog("获取cookies=="+cookies);
String idd = "";
if(cookies != null){
for(Cookie cookie:cookies){
bb.writeLog("获取cookiesName=="+cookie.getName());
if(cookie.getName().equals("loginidweaver")){
idd = cookie.getValue();
bb.writeLog("获取idd=="+idd);
}
}
}
//查询人员工号
RecordSet recordSet = new RecordSet();
String requestURI = request.getRequestURI();
bb.writeLog("请求路径="+requestURI);
Map<String, Object> useridMap = ParamUtil.request2Map(request);
bb.writeLog("人员id="+useridMap.get("userid"));
recordSet.executeQuery("select WORKCODE from HRMRESOURCE where id=?", Util.null2String(useridMap.get("userid")));
String workcode = "";
if (recordSet.next()){
workcode = Util.null2String(recordSet.getString("WORKCODE"));
}
bb.writeLog("人员workcode="+useridMap.get("workcode"));
//查询
String API_KEY = Util.null2String(bb.getPropValue("tjbankEMobileSSO","key"));//publicKey
String url = Util.null2String(bb.getPropValue("tjbankEMobileSSO","stUrl"));//获取ST的url
2 years ago
// String cockpitUrl = Util.null2String(bb.getPropValue("tjbankEMobileSSO","cockpitUrl"));
String cockpitUrl = STurl;
2 years ago
String tgturl = Util.null2String(bb.getPropValue("tjbankEMobileSSO","tgtUrl"));//请求获取TGT地址
//获取ST带着下游系统
2 years ago
// if (!isEmpty(certified_token)){
// String responseInfo = getST(certified_token,cockpitUrl);
// bb.writeLog("进入responseInfo-->"+responseInfo);
// if (isEmpty(responseInfo)){
// out.print("单点系统接口返回值为null");
// return;
// }else {
// org.json.JSONObject stMsg = new org.json.JSONObject(responseInfo);
// if(stMsg.has("ST")){
// ST = Util.null2String(stMsg.get("ST").toString());
// }else{
// out.print(Util.null2String(stMsg.getString("message")));
// return;
// }
//
// String loginUrl = "";
// // String remuseUrl = bb.getPropValue("tjbkremuse", "hbUrl");
// String remuseUrl = sysUrl;
// boolean isEm = Util.null2String(request.getHeader("user-agent")).indexOf("E-Mobile") > -1;
// if(isEm == true){
// loginUrl=remuseUrl+"ticket="+ST;
// }
//
// //loginUrl = "https://www.baidu.com/";
// bb.writeLog("loginUrl-->"+loginUrl);
// out.print("跳转路径-->"+loginUrl);
// //out.print(loginUrl);
// response.sendRedirect(loginUrl);
// // request.getRequestDispatcher("loginUrl").forward(request,response);
// // return;
// }
// }else {
String TGT ="";
String passWord ="";
String retMsg ="";
decriptList.add(login_id);
decriptList.add(user_password);
List<String> resultList = rsa.decryptList(request, decriptList);
String loginId = resultList.get(0);
String userPassword = resultList.get(1);
String publicKey = getPublicKey(MachInfo);
passWord = encrypt(user_password, publicKey);
params = new HashMap<>();//参数
params.put("username",loginId);
params.put("password",passWord);
bb.writeLog("==STparams=="+params);
headers = new HashMap<>();//headers
headers.put("API_KEY",API_KEY);
headers.put("MACH_ID",MachInfo.get("deviceId"));
headers.put("MACH_TYPE",MachInfo.get("clientType"));
headers.put("MACH_IP",MachInfo.get("param_ip"));
retMsg = httpPostForm(tgturl,params,headers,null);
bb.writeLog("===获取TGT返回值retMsg===="+retMsg);
org.json.JSONObject resMsg = new org.json.JSONObject(retMsg);
bb.writeLog("===获取TGT返回值===="+resMsg);
if(resMsg.has("TGT")){
TGT = Util.null2String(resMsg.get("TGT").toString());
}
String responseInfo = getST(TGT,cockpitUrl,MachInfo);
if (isEmpty(responseInfo)){
out.print("单点系统接口返回值为null");
return;
}else {
org.json.JSONObject stMsg = new org.json.JSONObject(responseInfo);
out.print(stMsg);
if(stMsg.has("ST")){
ST = Util.null2String(stMsg.get("ST").toString());
}else{
bb.writeLog(stMsg);
out.print(Util.null2String(stMsg.getString("message")));
2 years ago
return;
}
2 years ago
String loginUrl = "";
// String remuseUrl = bb.getPropValue("tjbkremuse", "hbUrl");
String remuseUrl = "";
2 years ago
2 years ago
boolean isEm = Util.null2String(request.getHeader("user-agent")).indexOf("E-Mobile") > -1;
if(isEm == true){
loginUrl=remuseUrl+"ticket="+ST;
//loginUrl="http://123.151.115.199:8080/bi/PCFW?proc=1&action=viewer&hback=true&db=%E6%99%BA%E6%85%A7%E6%96%B9%E7%95%A5/%E5%89%8D%E7%BD%AE%E9%A1%B5.db&ticket="+ST;
2 years ago
}
2 years ago
bb.writeLog("loginUrl-->"+loginUrl);
//out.print("跳转路径-->"+loginUrl);
//out.print("进入驾驶舱成功");
// out.print(loginUrl);
// response.sendRedirect(loginUrl);
// request.getRequestDispatcher("loginUrl").forward(request,response);
// }
2 years ago
// out.print("进入驾驶舱系统失败,请先获取标识");
//return;
}
2 years ago
}
2 years ago
%>
2 years ago
<h2>输入框与数据回显</h2>
<!-- 表单 -->
<form method="POST">
<label for="loginid">工号:</label>
<input type="text" name="loginid" id="loginid" />
<label for="STurl">地址:</label>
<input type="text" name="STurl" id="STurl" />
<button type="submit">提交</button>
</form>
<!-- 显示提交的数据 -->
<h3>提交的数据:</h3>
<p><%= loginid %></p>
<p><%= STurl %></p>
<p><%= ST %></p>
</body>
</html>