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.

63 lines
2.8 KiB
Plaintext

<%@ page import="weaver.file.Prop" %>
<%@ page import="com.engine.custom.sl.entity.EsbRequestHeader" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Date" %>
<%@ page import="com.engine.custom.sl.entity.TravelToEsbBean" %>
<%@ page import="java.nio.charset.StandardCharsets" %>
<%@ page import="com.engine.util.SocketClientUtil" %>
<%@ page import="com.engine.util.XMLUtils" %>
<%@ page import="java.util.Map" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="java.util.UUID" %>
<%@ page import="com.engine.common.util.ParamUtil" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%
// out.print(Prop.getPropValue("qwe","host"));
Map<String, Object> param = ParamUtil.request2Map(request);
String workCode = param.get("workCode").toString();
String timeStr = generateTimestamp();
EsbRequestHeader esbRequestHeader = new EsbRequestHeader();
esbRequestHeader.setService_sn(timeStr+workCode);
esbRequestHeader.setSystem_id("0170");
esbRequestHeader.setRequester_id("0258");
esbRequestHeader.setBranch_id("cwgl00002");
esbRequestHeader.setChannel_id("02");
esbRequestHeader.setService_time(timeStr);
esbRequestHeader.setNeed_request("");
esbRequestHeader.setSvcCd("300130001");
esbRequestHeader.setSvcScn("39");
String bnkSrlNo = esbRequestHeader.getRequester_id() + timeStr + workCode;
esbRequestHeader.setBnkSrlNo(bnkSrlNo);
esbRequestHeader.setFileFlg("0");
String Service_Body = "<Service_Body><request><operatorNo>"+ workCode +"</operatorNo></request></Service_Body>" ;
String Service_Header = TravelToEsbBean.convertObjectToXml(esbRequestHeader,"Service_Header");
String serviceXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Service>";
// out.print("UTF_8_serviceXML==="+ serviceXML);
serviceXML = serviceXML + Service_Header + Service_Body;
serviceXML = serviceXML + "</Service>";
// out.print("UTF_8_serviceXML==="+ serviceXML);
String length = String.format("%08d", serviceXML.length());
serviceXML = length + serviceXML;
serviceXML = new String(serviceXML.getBytes(StandardCharsets.UTF_8));
// out.print("请求=="+ serviceXML);
out.print("\n");
out.print("\n");
out.print("\n");
SocketClientUtil scketClient = new SocketClientUtil("14.1.76.116",10149);
String send = scketClient.send(serviceXML);
String substring = send.substring(0, 8);
String substring1 = send.substring(8);
Map<String, String> map = XMLUtils.parseXMLToMap(substring1);
// out.print("返回=="+map);
out.print(JSONObject.toJSONString(map));
%>
<%!
public static String generateTimestamp() {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
Date currentDate = new Date();
return dateFormat.format(currentDate);
}
%>