no message

master
rengp 2 years ago
parent b0ad721352
commit 5e0794e2dd

@ -10,16 +10,17 @@ import java.util.Map;
public class Client { public class Client {
// public static final int port = 8090; // public static final int port = 8090;
public static final int port = 8090; public static final int port = 8090;
// public static final String host = "14.1.209.146"; public static final String host = "14.1.209.146";
public static final String host = "127.0.0.1"; // public static final String host = "127.0.0.1";
public static void main(String[] args) { public static void main(String[] args) {
System.out.println("Client Start..."); System.out.println("Client Start...");
String str = "00000604<?xml version=\"1.0\" encoding=\"gbk\"?><Service><Service_Header><service_sn>1010157060000081243</service_sn><system_id>0258</system_id><requester_id>0157</requester_id><branch_id>010231100</branch_id><channel_id>01</channel_id><service_time>20230905104426</service_time><need_request>true</need_request><SvcCd>500130004</SvcCd><SvcScn>13</SvcScn><BnkSrlNo>015720230905060000081243</BnkSrlNo><FileFlg>0</FileFlg></Service_Header><Service_Body><request><path>todo</path><method>getCount</method><args><entry><key>userNum</key><value>10913026任广鹏是个大刷币</value></entry></args></request></Service_Body></Service>"; // String str = "00000604<?xml version=\"1.0\" encoding=\"gbk\"?><Service><Service_Header><service_sn>1010157060000081243</service_sn><system_id>0258</system_id><requester_id>0157</requester_id><branch_id>010231100</branch_id><channel_id>01</channel_id><service_time>20230905104426</service_time><need_request>true</need_request><SvcCd>500130004</SvcCd><SvcScn>13</SvcScn><BnkSrlNo>015720230905060000081243</BnkSrlNo><FileFlg>0</FileFlg></Service_Header><Service_Body><request><path>todo</path><method>getCount</method><args><entry><key>userNum</key><value>10913026任广鹏是个大刷币</value></entry></args></request></Service_Body></Service>";
String str = "00000658<?xml version=\"1.0\" encoding=\"UTF-8\"?><Service><Service_Header><service_sn>1010157060000081243</service_sn><system_id>0258</system_id><requester_id>0170</requester_id><branch_id>010231100</branch_id><channel_id>01</channel_id><service_time>20230905104426</service_time><need_request>true</need_request><SvcCd>500130004</SvcCd><SvcScn>13</SvcScn><BnkSrlNo>015720230905060000081243</BnkSrlNo><FileFlg>0</FileFlg></Service_Header><Service_Body><request><oaTrvlBnsExpnsAcctNo>补贴报销单09122</oaTrvlBnsExpnsAcctNo><apprvrNo>10110567</apprvrNo><apprvrName>10110567</apprvrName><flowStatus>2</flowStatus><sgntrOpn>测试退回签字意见?</sgntrOpn></request></Service_Body></Service>";
// String str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Service><Service_Header><service_sn>1010157060000081243</service_sn><system_id>0258</system_id><requester_id>0157</requester_id><branch_id>010231100</branch_id><channel_id>01</channel_id><service_time>20230905104426</service_time><need_request>true</need_request><SvcCd>500130004</SvcCd><SvcScn>13</SvcScn><BnkSrlNo>015720230905060000081243</BnkSrlNo><FileFlg>0</FileFlg></Service_Header><Service_Body><request><path>todo</path><method>getCount</method><args><entry><key>userNum</key><value>10913026任广鹏是个大刷币</value></entry></args></request></Service_Body></Service>"; // String str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Service><Service_Header><service_sn>1010157060000081243</service_sn><system_id>0258</system_id><requester_id>0157</requester_id><branch_id>010231100</branch_id><channel_id>01</channel_id><service_time>20230905104426</service_time><need_request>true</need_request><SvcCd>500130004</SvcCd><SvcScn>13</SvcScn><BnkSrlNo>015720230905060000081243</BnkSrlNo><FileFlg>0</FileFlg></Service_Header><Service_Body><request><path>todo</path><method>getCount</method><args><entry><key>userNum</key><value>10913026任广鹏是个大刷币</value></entry></args></request></Service_Body></Service>";
// Map<String, String> stringStringMap = XMLUtils.parseXMLToMap(str); // Map<String, String> stringStringMap = XMLUtils.parseXMLToMap(str);
// System.out.println(stringStringMap); // System.out.println(stringStringMap);
System.out.println(str.length()); System.out.println(str.length());
// System.exit(0);
// while (true) { // while (true) {
Socket socket = null; Socket socket = null;
try { try {

@ -4,6 +4,7 @@ import com.engine.tjbankSocket.SocketExecute;
import com.engine.util.XMLUtils; import com.engine.util.XMLUtils;
import com.icbc.api.internal.apache.http.impl.cookie.S; import com.icbc.api.internal.apache.http.impl.cookie.S;
import weaver.conn.RecordSet; import weaver.conn.RecordSet;
import weaver.general.StringUtil;
import weaver.general.Util; import weaver.general.Util;
import weaver.soa.workflow.request.RequestService; import weaver.soa.workflow.request.RequestService;
@ -21,7 +22,7 @@ public class CWGLSocketExecute implements SocketExecute {
Map<String, String> resultMap = null; Map<String, String> resultMap = null;
int userid = 0; int userid = 0;
try { try {
resultMap = getBeanByOAnum(oaTrvlBnsExpnsAcctNo,"formtable_main_39"); resultMap = getBeanByOAnum(oaTrvlBnsExpnsAcctNo,"formtable_main_281");
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -32,15 +33,24 @@ public class CWGLSocketExecute implements SocketExecute {
} }
String id = resultMap.get("id"); String id = resultMap.get("id");
int requestid = Util.getIntValue(resultMap.get("requestid")); int requestid = Util.getIntValue(resultMap.get("requestid"));
if (requestid == 0){
return XMLUtils.CW2XML(paramMap, "1", "流程未找到");
}
if (userid == 0){
return XMLUtils.CW2XML(paramMap, "1", "人员未找到");
}
RequestService requestService = new RequestService(); RequestService requestService = new RequestService();
boolean istrue = false;
if ("0".equals(flowStatus)){ if ("0".equals(flowStatus)){
istrue = requestService.nextNodeBySubmit(null, requestid, userid, sgntrOpn);
requestService.FlowNode(requestid,userid,sgntrOpn,"submit","");
}else { }else {
boolean b = requestService.nextNodeByReject(requestid, userid, sgntrOpn); istrue = requestService.nextNodeByReject(requestid, userid, sgntrOpn);
}
if (istrue){
return XMLUtils.CW2XML(paramMap, "0", "");
}else {
return XMLUtils.CW2XML(paramMap,"1","流程提交失败");
} }
return null;
} }
@ -60,7 +70,7 @@ public class CWGLSocketExecute implements SocketExecute {
public int getHrmidByWorkCode(String workcode) throws Exception { public int getHrmidByWorkCode(String workcode) throws Exception {
RecordSet recordSet = new RecordSet(); RecordSet recordSet = new RecordSet();
String sql = "select id from Hrmresouce where workcode = ?"; String sql = "select id from HRMRESOURCE where workcode = ?";
recordSet.executeQuery(sql,workcode); recordSet.executeQuery(sql,workcode);
if (recordSet.next()){ if (recordSet.next()){
return Util.getIntValue(recordSet.getString("id")); return Util.getIntValue(recordSet.getString("id"));

@ -169,6 +169,7 @@ public class XMLUtils {
try { try {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder(); DocumentBuilder builder = factory.newDocumentBuilder();
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(xmlString.getBytes(StandardCharsets.UTF_8)); ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(xmlString.getBytes(StandardCharsets.UTF_8));
Document document = builder.parse(byteArrayInputStream); Document document = builder.parse(byteArrayInputStream);
@ -194,8 +195,64 @@ public class XMLUtils {
} }
} }
//财务系统构建返回体
public static String CW2XML(Map<String,String> headerParam,String retCd , String errorMessage ) {
try {
// 创建文档对象
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
// 创建根节点
Element rootElement = doc.createElement("Service");
doc.appendChild(rootElement);
addServiceHeader(doc,rootElement,headerParam);
public static void main(String[] args) { // 创建Service_Body节点
Element serviceBodyElement = doc.createElement("Service_Body");
rootElement.appendChild(serviceBodyElement);
// 创建response节点
Element responseElement = doc.createElement("response");
serviceBodyElement.appendChild(responseElement);
// // 创建todo节点
// Element todoElement = doc.createElement("todo");
// responseElement.appendChild(todoElement);
// 创建count节点并设置值
if(retCd != null) {
Element countElement = doc.createElement("retCd");
countElement.setTextContent(retCd + "");
responseElement.appendChild(countElement);
}
if(errorMessage != null){
Element countOneElement = doc.createElement("errorMessage");
countOneElement.setTextContent(errorMessage+"");
responseElement.appendChild(countOneElement);
}
// 将文档对象转换为XML字符串
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no"); // 设置不包含XML声明
DOMSource source = new DOMSource(doc);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
StreamResult result = new StreamResult(outputStream);
transformer.transform(source, result);
// 将XML结果转换为字符串
String xmlString = outputStream.toString("UTF-8");
//System.out.println(xmlString);
String length = String.format("%08d", xmlString.length());
return length+xmlString;
} catch (Exception e) {
e.printStackTrace();
}
return "";
} }
} }

@ -139,6 +139,7 @@ class ProcessSocketData extends Thread {
private String execute(String XMLparam){ private String execute(String XMLparam){
Map<String, String> paramMap = XMLUtils.parseXMLToMap(XMLparam); Map<String, String> paramMap = XMLUtils.parseXMLToMap(XMLparam);
new BaseBean().writeLog(this.getClass().getName()+":paramMap=="+paramMap);
StringEscapeUtils.unescapeXml(XMLparam); StringEscapeUtils.unescapeXml(XMLparam);
//目标系统代码 //目标系统代码
String system_id = paramMap.get("system_id"); String system_id = paramMap.get("system_id");
@ -146,11 +147,14 @@ class ProcessSocketData extends Thread {
String requester_id = paramMap.get("requester_id"); String requester_id = paramMap.get("requester_id");
// 请求方机构代号 // 请求方机构代号
String branch_id = paramMap.get("branch_id"); String branch_id = paramMap.get("branch_id");
new BaseBean().writeLog(this.getClass().getName()+":requester_id=="+requester_id);
SocketExecute socketExecute = null; SocketExecute socketExecute = null;
if ("0157".equals(requester_id)){ if ("0157".equals(requester_id)){
socketExecute = new GetToCountSocketExecute(); socketExecute = new GetToCountSocketExecute();
new BaseBean().writeLog(this.getClass().getName()+":GetToCountSocketExecute");
}else if("0170".equals(requester_id)){ }else if("0170".equals(requester_id)){
socketExecute = new CWGLSocketExecute(); socketExecute = new CWGLSocketExecute();
new BaseBean().writeLog(this.getClass().getName()+":CWGLSocketExecute");
} }
String execute = socketExecute.execute(XMLparam); String execute = socketExecute.execute(XMLparam);
return execute; return execute;

@ -11,6 +11,7 @@ import weaver.general.BaseBean;
import weaver.soa.workflow.request.RequestInfo; import weaver.soa.workflow.request.RequestInfo;
import java.io.*; import java.io.*;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
@ -60,6 +61,8 @@ public class Action20230911062023 extends BaseBean implements Action {
writeLog("XMLlength"+ length); writeLog("XMLlength"+ length);
serviceXML = length + serviceXML; serviceXML = length + serviceXML;
writeLog("serviceXML==="+ serviceXML); writeLog("serviceXML==="+ serviceXML);
serviceXML = new String(serviceXML.getBytes(StandardCharsets.UTF_8));
writeLog("UTF_8_serviceXML==="+ serviceXML);
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
writeLog("构建XML异常"+e.getMessage()); writeLog("构建XML异常"+e.getMessage());

Loading…
Cancel
Save