diff --git a/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp b/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp index 1da4b22cd..d97d24a0d 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/BigdataPengyuan/query_report/pengyuanEbank.jsp @@ -134,7 +134,7 @@ //查询获取数据次数 if("SAVE".equals(type)) { - String result = bdc.getDataApplyId(CurPage, "pengyuan_af", Sqlca); + String result = bdc.getDataApplyId(CurPage, "ebank_af", Sqlca); if("false".equals(result)) { count = "0"; } else { diff --git a/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java b/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java index 343233685..4bc765197 100644 --- a/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java +++ b/src_tenwa/com/tenwa/httpclient/controller/BigDataController.java @@ -184,8 +184,8 @@ public class BigDataController { String xmlResult = this.getQueryReport(params, type); System.out.println("==================" + table + "@" + type + "获取数据===================="); - //String xmlPath = HttpClientUtil.queryReport(xmlResult, type, fileSavePath + "xml" + File.separator + applyId + File.separator); - //savePengyuanData(applyId, xmlPath, table, conn); + String xmlPath = HttpClientUtil.queryReport(xmlResult, type, fileSavePath + "xml" + File.separator + applyId + File.separator); + savePengyuanData(applyId, xmlPath, table, conn); StringBuffer keyword = new StringBuffer(); StringBuffer keywordValue = new StringBuffer(); @@ -294,13 +294,80 @@ public class BigDataController { fieldList.add("riskType"); object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personRiskAssess", stat, otherFields, dateFields, stringFields); + }else if("ebank_af".equals(type)){//卡交易查询 + + //存储queryConditions + Element personBankCheckInfo = cisReport.element("personBankCheckInfo"); + Element ebankitem = personBankCheckInfo.element("item"); + if(ebankitem != null) { + Element ebankcondition = ebankitem.element("condition"); + if(ebankcondition != null){ + obj = new JSONObject(); + List subItem = ebankcondition.elements(); + for(Element si : subItem) { + obj.put(si.getName(), si.getTextTrim()); + } + obj.put(ebankitem.element("status").getName(), ebankitem.element("status").getTextTrim()); + stat.execute(getInsertSql(obj, "bigdata_py_ebank_condition", null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); + } + } + + //卡交易记录 + Element ebankCondition = cisReport.element("personCardTransRecordInfo"); + List ebankitems = ebankCondition.elements("item"); + for(Element item : ebankitems) { + obj = new JSONObject(); + List subItem = item.elements(); + for(Element si : subItem) { + obj.put(si.getName(), si.getTextTrim()); + } + stat.execute(getInsertSql(obj, "bigdata_py_ebank_record", null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); + } + } else if("pengyuan_af".equals(type)){//个人反欺诈 - //个人反欺诈风险综述信息 + //身份认证信息 JSONArray array = new JSONArray(); JSONObject object = new JSONObject(); + object.put("type", "tables"); + object.put("subTable", array); + List fieldList = new ArrayList(); + JSONObject subTable1 = new JSONObject(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_certid_info"); + fieldList.add("name"); + fieldList.add("documentNo"); + fieldList.add("result"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "policeCheckInfo", stat, otherFields, dateFields, stringFields); + //手机号码核查结果 + object.clear(); + array.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_phone_info"); + fieldList.add("areaInfo"); + fieldList.add("documentNoCheckResult"); + fieldList.add("nameCheckResult"); + fieldList.add("operator"); + fieldList.add("phoneCheckResult"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "mobileCheckInfo", stat, otherFields, dateFields, stringFields); + + //个人反欺诈风险综述信息 + object.clear(); object.put("type", "table"); object.put("tableName", "bigdata_py_pe_an_sp_de_info"); - List fieldList = new ArrayList(); + fieldList.clear(); fieldList.add("personAntiSpoofingDesc"); object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personAntiSpoofingDescInfo", stat, otherFields, dateFields, stringFields); @@ -317,6 +384,35 @@ public class BigDataController { object.put("field", fieldList); savePengyuanResultData(object, cisReport, "personAntiSpoofingInfo", stat, otherFields, dateFields, stringFields); + //手机号码信息 + object.clear(); + array.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "item"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_phonestatus_info"); + fieldList.add("areaInfo"); + fieldList.add("cancelTime"); + fieldList.add("operator"); + fieldList.add("phoneStatus"); + fieldList.add("timeLength"); + subTable1.put("field", fieldList); + array.add(subTable1); + savePengyuanResultData(object, cisReport, "mobileStatusInfo", stat, otherFields, dateFields, stringFields); + + //是否命中高风险名单 + object.clear(); + object.put("type", "table"); + object.put("tableName", "bigdata_py_person_risk_assess"); + fieldList.clear(); + fieldList.add("checkResult"); + fieldList.add("riskType"); + object.put("field", fieldList); + savePengyuanResultData(object, cisReport, "personRiskAssess", stat, otherFields, dateFields, stringFields); + //是否命中羊毛党名单 object.clear(); object.put("type", "table"); @@ -335,50 +431,12 @@ public class BigDataController { object.put("field", fieldList); savePengyuanResultData(object, cisReport, "fraudRiskInfo", stat, otherFields, dateFields, stringFields); - //信贷行为信息 - object.clear(); - object.put("type", "table"); - object.put("tableName", "bigdata_py_credit_behavior_inf"); - fieldList.clear(); - fieldList.add("state"); - object.put("field", fieldList); - savePengyuanResultData(object, cisReport, "creditBehaviorInfo", stat, otherFields, dateFields, stringFields); - - //信贷逾期名单 - array.clear(); - object.clear(); - object.put("type", "tables"); - object.put("subTable", array); - fieldList.clear(); - - JSONObject subTable1 = new JSONObject(); - subTable1.put("name", "overdueStat"); - subTable1.put("type", "table"); - subTable1.put("tableName", "bigdata_py_overdue_state"); - fieldList.add("overdueAmount"); - fieldList.add("overdueTotal"); - fieldList.add("overdueNoClosedCnt"); - subTable1.put("field", fieldList); - JSONObject subTable2 = new JSONObject(); - subTable2.put("name", "overdueDetails"); - subTable2.put("type", "arrayTable"); - subTable2.put("tableName", "bigdata_py_overdue_detail"); - fieldList = new ArrayList(); - fieldList.add("overdueDays"); - fieldList.add("overdueAmount"); - fieldList.add("settlement"); - subTable2.put("field", fieldList); - array.add(subTable1); - array.add(subTable2); - savePengyuanResultData(object, cisReport, "overdueLoanInfo", stat, otherFields, dateFields, stringFields); - //个人被机构查询概要信息 array.clear(); object.clear(); object.put("type", "tables"); object.put("subTable", array); fieldList.clear(); - subTable1 = new JSONObject(); subTable1.put("name", "items"); subTable1.put("type", "arrayTable"); @@ -392,6 +450,7 @@ public class BigDataController { fieldList.add("last24Month"); subTable1.put("field", fieldList); + JSONObject subTable2 = new JSONObject(); subTable2 = new JSONObject(); subTable2.put("name", "count"); subTable2.put("type", "table"); @@ -406,27 +465,56 @@ public class BigDataController { subTable2.put("field", fieldList); JSONObject subTable3 = new JSONObject(); - subTable3.put("name", "suspectedBulllending"); + /*subTable3.put("name", "suspectedBulllending"); subTable3.put("type", "table"); subTable3.put("tableName", "bigdata_py_his_que_info_sb"); fieldList = new ArrayList(); fieldList.add("appplyCnt"); fieldList.add("applyNetLoanCnt"); fieldList.add("applyFinclCnt"); - subTable3.put("field", fieldList); + subTable3.put("field", fieldList);*/ array.add(subTable1); array.add(subTable2); - array.add(subTable3); +// array.add(subTable3); savePengyuanResultData(object, cisReport, "historySimpleQueryInfo", stat, otherFields, dateFields, stringFields); - //风险信息 + + //近三年信贷逾期信息 array.clear(); object.clear(); object.put("type", "tables"); object.put("subTable", array); fieldList.clear(); + subTable1 = new JSONObject(); + subTable1.put("name", "stat"); + subTable1.put("type", "table"); + subTable1.put("tableName", "bigdata_py_overdue_summary"); + fieldList.add("overdueAmount"); + fieldList.add("overdueDays"); + fieldList.add("overdueCount"); + subTable1.put("field", fieldList); + subTable2 = new JSONObject(); + subTable2.put("name", "items"); + subTable2.put("type", "arrayTable"); + subTable2.put("tableName", "bigdata_py_overdue_info"); + fieldList = new ArrayList(); + fieldList.add("overdueAmount"); + fieldList.add("overdueDays"); + fieldList.add("overdueCount"); + subTable2.put("field", fieldList); + + array.add(subTable1); + array.add(subTable2); + savePengyuanResultData(object, cisReport, "microNearlyThreeYearsOverdueInfo", stat, otherFields, dateFields, stringFields); + + //险信息风 + array.clear(); + object.clear(); + object.put("type", "tables"); + object.put("subTable", array); + fieldList.clear(); subTable1 = new JSONObject(); subTable1.put("name", "stat"); subTable1.put("type", "table"); @@ -448,7 +536,7 @@ public class BigDataController { subTable3 = new JSONObject(); subTable3.put("name", "als"); - subTable3.put("type", "array"); + subTable3.put("type", "arrayTable"); subTable3.put("tableName", "bigdata_py_pr_als"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -461,7 +549,7 @@ public class BigDataController { JSONObject subTable4 = new JSONObject(); subTable4.put("name", "zxs"); - subTable4.put("type", "array"); + subTable4.put("type", "arrayTable"); subTable4.put("tableName", "bigdata_py_pr_zxs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -473,7 +561,7 @@ public class BigDataController { JSONObject subTable5 = new JSONObject(); subTable5.put("name", "sxs"); - subTable5.put("type", "array"); + subTable5.put("type", "arrayTable"); subTable5.put("tableName", "bigdata_py_pr_sxs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -485,7 +573,7 @@ public class BigDataController { JSONObject subTable6 = new JSONObject(); subTable6.put("name", "sws"); - subTable6.put("type", "array"); + subTable6.put("type", "arrayTable"); subTable6.put("tableName", "bigdata_py_pr_sws"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -496,7 +584,7 @@ public class BigDataController { JSONObject subTable7 = new JSONObject(); subTable7.put("name", "cqs"); - subTable7.put("type", "array"); + subTable7.put("type", "arrayTable"); subTable7.put("tableName", "bigdata_py_pr_cqs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -507,7 +595,7 @@ public class BigDataController { JSONObject subTable8 = new JSONObject(); subTable8.put("name", "wdyqs"); - subTable8.put("type", "array"); + subTable8.put("type", "arrayTable"); subTable8.put("tableName", "bigdata_py_pr_wdyqs"); fieldList = new ArrayList(); fieldList.add("recordId"); @@ -573,10 +661,10 @@ public class BigDataController { if(fieldElement != null) { obj.put(fieldElement.getName(), fieldElement.getStringValue().trim()); } - if(!obj.isEmpty()) { - stat.execute(getInsertSql(obj, dataType.getString("tableName"), null, otherFields, true, dateFields, stringFields)); - otherFields.remove("ID"); - } + } + if(!obj.isEmpty()) { + stat.execute(getInsertSql(obj, dataType.getString("tableName"), null, otherFields, true, dateFields, stringFields)); + otherFields.remove("ID"); } } } @@ -718,7 +806,8 @@ public class BigDataController { if(dateFields != null) { for(Entry dateField : dateFields.entrySet()) { if(dateField.getKey().equals(key)) { - return "TO_DATE('" + value + "', '" + dateField.getValue() + "')"; +// return "DATE_FORMAT('" + value + "', '" + dateField.getValue() + "')"; + return "'" + value + "'"; } } return "'" + value + "'";