package com.roma.romaapi.utils; import java.util.HashMap; import java.util.Map; // 相应工具类 public class CustomResponse { // 特殊的三个系统错误字段: // sysErrorCode 错误码 // sysErrorMessage 错误消息 // sysErrorData 错误数据 public static Map success(T data) { Map result = new HashMap<>(); result.put("code", "200"); result.put("message", "success"); result.put("data", data); return result; } public static Map error(T data, String code, String message) { Map result = new HashMap<>(); result.put("code", code); result.put("message", message); result.put("data", data); return result; } // 格式化响应 public static Map formatResponse(Map data) { Map result = new HashMap<>(); String code = "0"; String message = "success"; boolean isEmpty = data.containsKey("sysErrorCode"); if(isEmpty) { // 如果要返回错误提示 boolean isEmptyData = data.containsKey("sysErrorData"); // 错误数据 Object errorCode = data.get("sysErrorCode"); // 错误码 Object errorMessage = data.containsKey("sysErrorMessage") ? data.get("sysErrorMessage") : new String("operation failed!"); // 错误提示信息 result.put("status", errorCode.toString()); result.put("msg", errorMessage.toString()); result.put("data", !isEmptyData ? data.get("sysErrorData") : new HashMap<>()); } else { // 返回正确信息 result.put("status", code); result.put("msg", message); result.put("data", data); } return result; } }