Commit 8dfe8ea4 by giaogiao

多语言国际化,根据http上下文, 取得heard中的language语言属性,实现不用在业务代码中传递语言字段

parent 2ce8e534
......@@ -18,11 +18,13 @@ package io.geekidea.springbootplus.framework.common.api;
import io.geekidea.springbootplus.framework.config.il8n.I18nMessageUtil;
import io.geekidea.springbootplus.framework.config.il8n.LanguageEnum;
import io.geekidea.springbootplus.framework.util.HttpServletRequestUtil;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.experimental.Accessors;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.io.Serializable;
import java.util.HashMap;
......@@ -82,6 +84,13 @@ public class ApiResult<T> implements Serializable {
return fail();
}
public static ApiResult<Boolean> result(boolean flag, String language) {
if (flag) {
return ok(null, language);
}
return fail(language);
}
public static ApiResult<Boolean> result(ApiCode apiCode) {
return result(apiCode, null);
}
......@@ -101,6 +110,10 @@ public class ApiResult<T> implements Serializable {
// success = true;
// }
// 多语言国际化,根据http上下文, 取得heard中的language语言属性,实现不用在业务代码中传递语言字段
HttpServletRequest request = HttpServletRequestUtil.getRequest();
language = request.getHeader("language");
String success = "SUCCESS";
try {
message = I18nMessageUtil.getMessage(LanguageEnum.getLanguageType(language), apiCode.getMessage(), success);
......@@ -158,7 +171,13 @@ public class ApiResult<T> implements Serializable {
throw new RuntimeException("失败结果状态码不能为" + ApiCode.SUCCESS.getCode());
}
return result(apiCode, data);
}
public static <T> ApiResult<T> fail(ApiCode apiCode, T data, String language) {
if (ApiCode.SUCCESS == apiCode) {
throw new RuntimeException("失败结果状态码不能为" + ApiCode.SUCCESS.getCode());
}
return result(apiCode, data, language);
}
public static ApiResult<String> fail(Integer errorCode, String message) {
......@@ -177,4 +196,8 @@ public class ApiResult<T> implements Serializable {
public static ApiResult<Boolean> fail() {
return fail(ApiCode.FAIL);
}
public static ApiResult<Boolean> fail(String language) {
return fail(ApiCode.FAIL, language);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment