support template multilingual in GlobalReturnHandler

This commit is contained in:
Timi
2025-11-06 16:22:11 +08:00
parent 838c6cd6a4
commit 1a81ac1c54

View File

@ -2,6 +2,7 @@ package com.imyeyu.spring.util;
import com.imyeyu.java.TimiJava; import com.imyeyu.java.TimiJava;
import com.imyeyu.java.bean.CallbackArgReturn; import com.imyeyu.java.bean.CallbackArgReturn;
import com.imyeyu.java.bean.LanguageMsgMapping;
import com.imyeyu.java.bean.timi.TimiCode; import com.imyeyu.java.bean.timi.TimiCode;
import com.imyeyu.java.bean.timi.TimiResponse; import com.imyeyu.java.bean.timi.TimiResponse;
import com.imyeyu.spring.TimiSpring; import com.imyeyu.spring.TimiSpring;
@ -31,7 +32,7 @@ public class GlobalReturnHandler implements ResponseBodyAdvice<Object> {
private static final Logger log = LoggerFactory.getLogger(GlobalReturnHandler.class); private static final Logger log = LoggerFactory.getLogger(GlobalReturnHandler.class);
private CallbackArgReturn<String, String> multilingualHeader; private CallbackArgReturn<LanguageMsgMapping<?>, String> multilingualHeader;
@Override @Override
public boolean supports(@NonNull MethodParameter returnType, @NonNull Class<? extends HttpMessageConverter<?>> converterType) { public boolean supports(@NonNull MethodParameter returnType, @NonNull Class<? extends HttpMessageConverter<?>> converterType) {
@ -55,7 +56,7 @@ public class GlobalReturnHandler implements ResponseBodyAdvice<Object> {
result = new TimiResponse<>(TimiCode.SUCCESS, body); result = new TimiResponse<>(TimiCode.SUCCESS, body);
} }
if (multilingualHeader != null && TimiJava.isNotEmpty(result.getMsgKey())) { if (multilingualHeader != null && TimiJava.isNotEmpty(result.getMsgKey())) {
result.setMsg(multilingualHeader.handler(result.getMsgKey())); result.setMsg(multilingualHeader.handler(result));
} else if (TimiJava.isEmpty(result.getMsg())) { } else if (TimiJava.isEmpty(result.getMsg())) {
result.setMsg(TimiCode.fromCode(result.getCode()).toString()); result.setMsg(TimiCode.fromCode(result.getCode()).toString());
} }
@ -65,11 +66,11 @@ public class GlobalReturnHandler implements ResponseBodyAdvice<Object> {
return result; return result;
} }
public CallbackArgReturn<String, String> getMultilingualHeader() { public CallbackArgReturn<LanguageMsgMapping<?>, String> getMultilingualHeader() {
return multilingualHeader; return multilingualHeader;
} }
public void setMultilingualHeader(CallbackArgReturn<String, String> multilingualHeader) { public void setMultilingualHeader(CallbackArgReturn<LanguageMsgMapping<?>, String> multilingualHeader) {
this.multilingualHeader = multilingualHeader; this.multilingualHeader = multilingualHeader;
} }
} }