路泰机电科技体检——数据平台后端
zhaowenxuan
2024-12-19 11bf64d4ff5b105a76615cf3775abdf53fdd86d7
处理返回字段工具类
2个文件已添加
84 ■■■■■ 已修改文件
src/main/java/com/example/constant/FieldNameMapping.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/example/utils/FieldNameConverter.java 55 ●●●●● 补丁 | 查看 | 原始文档 | 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;
    }
}