风控中台对接-评分推送接口完善失败逻辑

This commit is contained in:
zhanglei 2023-09-11 14:54:27 +08:00
parent caa0da1e8e
commit cd55235352

View File

@ -39,6 +39,7 @@ public class ScoreResultServlet extends HttpServlet {
response.setCharacterEncoding("utf-8");
PrintWriter out = null;
String resultXml = null;
String res = null;
try {
out = response.getWriter();
BufferedReader in = new BufferedReader(new InputStreamReader(request.getInputStream(), "UTF-8"));
@ -49,13 +50,12 @@ public class ScoreResultServlet extends HttpServlet {
}
resultXml = sb.toString();
ARE.getLog().info("½ÓÊÕµ½Rpt¼Ç¼£º" + resultXml);
out.print(updateResult(resultXml));
System.out.println("评分结果推送接收接口请求回调结束!");
out.close();
} catch (Exception e) {
e.printStackTrace();
}
out.print(updateResult(resultXml));
System.out.println("评分结果推送接收接口请求回调结束!");
out.close();
}
@ -109,20 +109,13 @@ public class ScoreResultServlet extends HttpServlet {
}
public String updateResult(String requestXml) throws Exception{
public String updateResult(String requestXml) {
Transaction tran = (Transaction) XstreamUtil.objectConvert(requestXml);
String logPath = BaicPropertiesUtil.get("log_path");
String globalSeqNo = tran.getMessageEsbHead().getGlobalSeqNo();
String projectNo = tran.getMessageBody().getAfsResultRequest().getApplyNo();
FileUtil.writeFile(logPath + projectNo +"_"+ globalSeqNo +"_request.txt", requestXml);
String fraudAlert = tran.getMessageBody().getAfsResultRequest().getFraudAlert();
String actionTaken = tran.getMessageBody().getAfsResultRequest().getActionTaken();
try {
savePushLog(requestXml);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
String RetCommStatus = "S";
Response rs = new Response();
rs.setResult("Successful");
MessageBody mb = new MessageBody();
@ -133,11 +126,19 @@ public class ScoreResultServlet extends HttpServlet {
esbHead.setTargetMachineTime(DateUtils.TimeNowAccurate());
esbHead.setTargetReciveDate(DateUtils.dateNow());
esbHead.setTargetReciveTime(DateUtils.TimeNowAccurate());
esbHead.setRetCommStatus("S");
esbHead.setRetCode("000000");
esbHead.setRetMsg("³É¹¦");
esbHead.setRetSystemId("APF");
try {
savePushLog(requestXml);
} catch (Exception e) {
e.printStackTrace();
tran.setMessageBody(null);
RetCommStatus = "F";
esbHead.setRetCode("99999");
esbHead.setRetMsg("失败:"+e.getMessage());
}
esbHead.setRetCommStatus(RetCommStatus);
MessageAppHead appHead = tran.getMessageAppHead();
appHead.setTargetTranDate(DateUtils.dateNow());
appHead.setTargetTranTime(DateUtils.TimeNowAccurate());