Skip to content

Commit fd537a5

Browse files
committed
feat: 消息码配置
1 parent ad8e02e commit fd537a5

File tree

3 files changed

+119
-0
lines changed

3 files changed

+119
-0
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package com.starimmortal.core.aop;
2+
3+
import com.starimmortal.core.configuration.CodeMessageConfiguration;
4+
import com.starimmortal.core.vo.ResponseVO;
5+
import org.aspectj.lang.annotation.AfterReturning;
6+
import org.aspectj.lang.annotation.Aspect;
7+
import org.springframework.beans.factory.annotation.Autowired;
8+
import org.springframework.stereotype.Component;
9+
import org.springframework.util.StringUtils;
10+
11+
/**
12+
* 处理返回结果为 UnifyResponseVO 的控制器层方法
13+
* message 默认为 null,在此处通过 code 设置为对应消息
14+
*
15+
* @author william@StarImmortal
16+
* @date 2021/02/08
17+
*/
18+
@Aspect
19+
@Component
20+
public class ResultAspect {
21+
22+
@Autowired
23+
private CodeMessageConfiguration codeMessageConfiguration;
24+
25+
@AfterReturning(returning = "result", pointcut = "execution(public * com.starimmortal..controller..*.*(..))")
26+
public void doAfterReturning(ResponseVO<String> result) {
27+
int code = result.getCode();
28+
String oldMessage = result.getMessage();
29+
// code-message.properties 中配置的 message
30+
String newMessage = codeMessageConfiguration.getMessage(code);
31+
// 如果 code-message.properties 中指定了相应的 message 并且 UnifyResponseVO 的 message 为null
32+
// 则使用 newMessage 替换 oldMessage
33+
if (StringUtils.hasText(newMessage) && !StringUtils.hasText(oldMessage)) {
34+
result.setMessage(newMessage);
35+
}
36+
}
37+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package com.starimmortal.core.configuration;
2+
3+
import lombok.Getter;
4+
import org.springframework.boot.context.properties.ConfigurationProperties;
5+
import org.springframework.context.annotation.PropertySource;
6+
import org.springframework.stereotype.Component;
7+
8+
import java.util.HashMap;
9+
import java.util.Map;
10+
11+
/**
12+
* 消息码配置类
13+
*
14+
* @author william@StarImmortal
15+
* @date 2021/02/08
16+
*/
17+
@SuppressWarnings("ConfigurationProperties")
18+
@ConfigurationProperties
19+
@PropertySource(value = "classpath:code-message.properties", encoding = "UTF-8")
20+
@Component
21+
@Getter
22+
public class CodeMessageConfiguration {
23+
private final Map<Integer, String> codeMessage = new HashMap<>();
24+
25+
public String getMessage(Integer code) {
26+
return codeMessage.get(code);
27+
}
28+
}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
code-message[0] = ok
2+
code-message[1] = \u521B\u5EFA\u6210\u529F
3+
code-message[2] = \u66F4\u65B0\u6210\u529F
4+
code-message[3] = \u5220\u9664\u6210\u529F
5+
code-message[4] = \u53D6\u6D88\u6210\u529F
6+
code-message[5] = \u6CE8\u518C\u6210\u529F
7+
code-message[9999] = \u670D\u52A1\u5668\u672A\u77E5\u5F02\u5E38
8+
9+
code-message[10000] = \u672A\u643A\u5E26\u4EE4\u724C
10+
code-message[10001] = \u672A\u767B\u5F55\uFF0C\u8BF7\u5148\u767B\u5F55
11+
code-message[10002] = \u6743\u9650\u4E0D\u8DB3
12+
code-message[10003] = \u8BA4\u8BC1\u5931\u8D25
13+
code-message[10010] = \u6388\u6743\u5931\u8D25
14+
code-message[10011] = \u66F4\u65B0\u5BC6\u7801\u5931\u8D25
15+
code-message[10012] = \u8BF7\u4F20\u5165\u8BA4\u8BC1\u5934\u5B57\u6BB5
16+
code-message[10013] = \u8BA4\u8BC1\u5934\u5B57\u6BB5\u89E3\u6790\u5931\u8D25
17+
code-message[10020] = \u8D44\u6E90\u4E0D\u5B58\u5728
18+
code-message[10021] = \u7528\u6237\u4E0D\u5B58\u5728
19+
code-message[10022] = \u89D2\u8272\u4E0D\u5B58\u5728
20+
code-message[10025] = \u627E\u4E0D\u5230\u76F8\u5E94\u7684\u89C6\u56FE\u5904\u7406\u5668
21+
code-message[10026] = \u672A\u627E\u5230\u6587\u4EF6
22+
code-message[10030] = \u53C2\u6570\u9519\u8BEF
23+
code-message[10031] = \u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF
24+
code-message[10032] = \u5BC6\u7801\u6821\u9A8C\u5931\u8D25
25+
code-message[10033] = \u9A8C\u8BC1\u7801\u9519\u8BEF
26+
code-message[10034] = \u624B\u673A\u683C\u5F0F\u6821\u9A8C\u5931\u8D25
27+
code-message[10035] = \u624B\u673A\u53F7\u9519\u8BEF
28+
code-message[10040] = \u4EE4\u724C\u5931\u6548
29+
code-message[10041] = access token \u635F\u574F
30+
code-message[10042] = refresh token \u635F\u574F
31+
code-message[10050] = \u4EE4\u724C\u8FC7\u671F
32+
code-message[10051] = access token \u8FC7\u671F
33+
code-message[10052] = refresh token \u8FC7\u671F
34+
code-message[10060] = \u5B57\u6BB5\u91CD\u590D
35+
code-message[10070] = \u7981\u6B62\u64CD\u4F5C
36+
code-message[10071] = \u7528\u6237\u540D\u5DF2\u88AB\u4F7F\u7528\uFF0C\u8BF7\u91CD\u65B0\u8F93\u5165\u65B0\u7684\u7528\u6237\u540D
37+
code-message[10072] = \u90AE\u7BB1\u5DF2\u88AB\u4F7F\u7528\uFF0C\u8BF7\u91CD\u65B0\u586B\u5165\u65B0\u7684\u90AE\u7BB1
38+
code-message[10073] = \u624B\u673A\u53F7\u5DF2\u88AB\u4F7F\u7528\uFF0C\u8BF7\u91CD\u65B0\u586B\u5165\u65B0\u7684\u624B\u673A\u53F7
39+
code-message[10080] = \u8BF7\u6C42\u65B9\u6CD5\u4E0D\u5141\u8BB8
40+
code-message[10100] = \u5237\u65B0\u4EE4\u724C\u83B7\u53D6\u5931\u8D25
41+
code-message[10110] = \u6587\u4EF6\u4F53\u79EF\u8FC7\u5927
42+
code-message[10120] = \u6587\u4EF6\u6570\u91CF\u8FC7\u591A
43+
code-message[10121] = \u6587\u4EF6\u592A\u591A\uFF0C\u6587\u4EF6\u603B\u6570\u4E0D\u53EF\u8D85\u8FC7${file.nums}
44+
code-message[10130] = \u6587\u4EF6\u6269\u5C55\u540D\u4E0D\u7B26\u5408\u89C4\u8303
45+
code-message[10131] = \u6587\u4EF6\u7C7B\u578B\u6682\u4E0D\u652F\u6301
46+
code-message[10140] = \u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5
47+
code-message[10141] = \u77ED\u4FE1\u9A8C\u8BC1\u7801\u53D1\u9001\u592A\u9891\u7E41
48+
code-message[10142] = \u77ED\u4FE1\u9A8C\u8BC1\u7801\u9519\u8BEF\u6B21\u6570\u8D85\u9650\uFF0C\u8BF7\u4E00\u5C0F\u65F6\u540E\u518D\u8BD5
49+
code-message[10150] = \u4E22\u5931\u53C2\u6570
50+
code-message[10160] = \u7C7B\u578B\u9519\u8BEF
51+
code-message[10170] = \u8BF7\u6C42\u4F53\u4E0D\u53EF\u4E3A\u7A7A
52+
code-message[10180] = \u5355\u6587\u4EF6\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC7${file.max-file-size}\uFF0C\u8BF7\u6C42\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC7${file.max-request-size}
53+
code-message[10190] = \u8BFB\u53D6\u6587\u4EF6\u6570\u636E\u5931\u8D25
54+
code-message[10200] = \u5931\u8D25

0 commit comments

Comments
 (0)