//package com.ruoyi.web.core.wvp;
//
//import com.fasterxml.jackson.core.type.TypeReference;
//import com.fasterxml.jackson.databind.JavaType;
//import com.fasterxml.jackson.databind.ObjectMapper;
//import com.ruoyi.web.core.wvp.domain.ApiResponse;
//
//public class ApiResponseParser {
//    private static final ObjectMapper objectMapper = new ObjectMapper();
//
//    /**
//     * 解析完整ApiResponse，包含状态码和消息
//     * @param json JSON字符串
//     * @param dataType data字段的类型
//     * @return 完整的ApiResponse对象
//     */
//    public static <T> ApiResponse<T> parseFullResponse(String json, Class<T> dataType) throws Exception {
//        // 构建包含泛型信息的JavaType
//        JavaType javaType = objectMapper.getTypeFactory()
//                .constructParametricType(ApiResponse.class, dataType);
//
//        return objectMapper.readValue(json, javaType);
//    }
//
//    /**
//     * 使用TypeReference处理复杂嵌套类型
//     * @param json JSON字符串
//     * @param typeReference 类型引用
//     * @return 完整的ApiResponse对象
//     */
//    public static <T> ApiResponse<T> parseFullResponse(
//            String json,
//            TypeReference<ApiResponse<T>> typeReference) throws Exception {
//
//        return objectMapper.readValue(json, typeReference);
//    }
//}