src/main/java/com/example/constant/FieldNameMapping.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/example/utils/FieldNameConverter.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/example/constant/FieldNameMapping.java
New file @@ -0,0 +1,29 @@ package com.example.constant; import java.util.Map; import java.util.HashMap; /** * 字段对应处理常量 */ public class FieldNameMapping { public static final Map<String, String> FIELD_MAPPING = new HashMap<>(); static { FIELD_MAPPING.put("bingRenId", ApiParamsConstants.PATIONID); FIELD_MAPPING.put("jiuZhenKh", ApiParamsConstants.CARD_ID); FIELD_MAPPING.put("kaiLeiXing", ApiParamsConstants.CARD_TYPE); FIELD_MAPPING.put("xingMing", ApiParamsConstants.CUS_NAME); FIELD_MAPPING.put("xingBie", ApiParamsConstants.CUS_SEX); FIELD_MAPPING.put("shenFenZh", ApiParamsConstants.CUS_ID_CARD); FIELD_MAPPING.put("danWeiBh", ApiParamsConstants.COMP_ID); FIELD_MAPPING.put("chuShengRq", ApiParamsConstants.CUS_BRITHDAY); FIELD_MAPPING.put("lianXiDz", ApiParamsConstants.CUS_ADDR); FIELD_MAPPING.put("lianXiDh", ApiParamsConstants.CUS_PHONE); FIELD_MAPPING.put("feiYongLb", ApiParamsConstants.FEI_YONG_STATUS); FIELD_MAPPING.put("zhangHuYe", ApiParamsConstants.CUS_BALANCE); FIELD_MAPPING.put("zhangHuId", ApiParamsConstants.CUS_ACCOUNT_ID); } } src/main/java/com/example/utils/FieldNameConverter.java
New file @@ -0,0 +1,55 @@ package com.example.utils; import cn.hutool.json.JSON; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.example.constant.FieldNameMapping; import java.util.Map; /** * 解析JSON * 字段统一处理类 */ public class FieldNameConverter { public static JSON convertFieldNames(JSON json) { if (json instanceof JSONObject) { return convertJSONObject((JSONObject) json); } else if (json instanceof JSONArray) { return convertJSONArray((JSONArray) json); } return json; } private static JSONObject convertJSONObject(JSONObject jsonObject) { JSONObject newJsonObject = new JSONObject(); for (String key : jsonObject.keySet()) { String newKey = FieldNameMapping.FIELD_MAPPING.getOrDefault(key, key); Object value = jsonObject.get(key); if (value instanceof JSONObject) { newJsonObject.putOpt(newKey, convertJSONObject((JSONObject) value)); } else if (value instanceof JSONArray) { newJsonObject.putOpt(newKey, convertJSONArray((JSONArray) value)); } else { newJsonObject.putOpt(newKey, value); } } return newJsonObject; } private static JSONArray convertJSONArray(JSONArray jsonArray) { JSONArray newArray = new JSONArray(); for (Object item : jsonArray) { if (item instanceof JSONObject) { newArray.add(convertJSONObject((JSONObject) item)); } else if (item instanceof JSONArray) { newArray.add(convertJSONArray((JSONArray) item)); } else { newArray.add(item); } } return newArray; } }