懒羊羊
2024-01-31 e57a8990ae56f657a59c435a0613c5f7a8728003
提交 | 用户 | 时间
e57a89 1 package com.jcdm.common.core.domain;
2
3 import java.util.HashMap;
4 import java.util.Objects;
5 import com.jcdm.common.constant.HttpStatus;
6 import com.jcdm.common.utils.StringUtils;
7
8 /**
9  * 操作消息提醒
10  * 
11  * @author jc
12  */
13 public class AjaxResult extends HashMap<String, Object>
14 {
15     private static final long serialVersionUID = 1L;
16
17     /** 状态码 */
18     public static final String CODE_TAG = "code";
19
20     /** 返回内容 */
21     public static final String MSG_TAG = "msg";
22
23     /** 数据对象 */
24     public static final String DATA_TAG = "data";
25
26     /**
27      * 初始化一个新创建的 AjaxResult 对象,使其表示一个空消息。
28      */
29     public AjaxResult()
30     {
31     }
32
33     /**
34      * 初始化一个新创建的 AjaxResult 对象
35      * 
36      * @param code 状态码
37      * @param msg 返回内容
38      */
39     public AjaxResult(int code, String msg)
40     {
41         super.put(CODE_TAG, code);
42         super.put(MSG_TAG, msg);
43     }
44
45     /**
46      * 初始化一个新创建的 AjaxResult 对象
47      * 
48      * @param code 状态码
49      * @param msg 返回内容
50      * @param data 数据对象
51      */
52     public AjaxResult(int code, String msg, Object data)
53     {
54         super.put(CODE_TAG, code);
55         super.put(MSG_TAG, msg);
56         if (StringUtils.isNotNull(data))
57         {
58             super.put(DATA_TAG, data);
59         }
60     }
61
62     /**
63      * 返回成功消息
64      * 
65      * @return 成功消息
66      */
67     public static AjaxResult success()
68     {
69         return AjaxResult.success("操作成功");
70     }
71
72     /**
73      * 返回成功数据
74      * 
75      * @return 成功消息
76      */
77     public static AjaxResult success(Object data)
78     {
79         return AjaxResult.success("操作成功", data);
80     }
81
82     /**
83      * 返回成功消息
84      * 
85      * @param msg 返回内容
86      * @return 成功消息
87      */
88     public static AjaxResult success(String msg)
89     {
90         return AjaxResult.success(msg, null);
91     }
92
93     /**
94      * 返回成功消息
95      * 
96      * @param msg 返回内容
97      * @param data 数据对象
98      * @return 成功消息
99      */
100     public static AjaxResult success(String msg, Object data)
101     {
102         return new AjaxResult(HttpStatus.SUCCESS, msg, data);
103     }
104
105     /**
106      * 返回警告消息
107      *
108      * @param msg 返回内容
109      * @return 警告消息
110      */
111     public static AjaxResult warn(String msg)
112     {
113         return AjaxResult.warn(msg, null);
114     }
115
116     /**
117      * 返回警告消息
118      *
119      * @param msg 返回内容
120      * @param data 数据对象
121      * @return 警告消息
122      */
123     public static AjaxResult warn(String msg, Object data)
124     {
125         return new AjaxResult(HttpStatus.WARN, msg, data);
126     }
127
128     /**
129      * 返回错误消息
130      * 
131      * @return 错误消息
132      */
133     public static AjaxResult error()
134     {
135         return AjaxResult.error("操作失败");
136     }
137
138     /**
139      * 返回错误消息
140      * 
141      * @param msg 返回内容
142      * @return 错误消息
143      */
144     public static AjaxResult error(String msg)
145     {
146         return AjaxResult.error(msg, null);
147     }
148
149     /**
150      * 返回错误消息
151      * 
152      * @param msg 返回内容
153      * @param data 数据对象
154      * @return 错误消息
155      */
156     public static AjaxResult error(String msg, Object data)
157     {
158         return new AjaxResult(HttpStatus.ERROR, msg, data);
159     }
160
161     /**
162      * 返回错误消息
163      * 
164      * @param code 状态码
165      * @param msg 返回内容
166      * @return 错误消息
167      */
168     public static AjaxResult error(int code, String msg)
169     {
170         return new AjaxResult(code, msg, null);
171     }
172
173     /**
174      * 是否为成功消息
175      *
176      * @return 结果
177      */
178     public boolean isSuccess()
179     {
180         return Objects.equals(HttpStatus.SUCCESS, this.get(CODE_TAG));
181     }
182
183     /**
184      * 是否为警告消息
185      *
186      * @return 结果
187      */
188     public boolean isWarn()
189     {
190         return Objects.equals(HttpStatus.WARN, this.get(CODE_TAG));
191     }
192
193     /**
194      * 是否为错误消息
195      *
196      * @return 结果
197      */
198     public boolean isError()
199     {
200         return Objects.equals(HttpStatus.ERROR, this.get(CODE_TAG));
201     }
202
203     /**
204      * 方便链式调用
205      *
206      * @param key 键
207      * @param value 值
208      * @return 数据对象
209      */
210     @Override
211     public AjaxResult put(String key, Object value)
212     {
213         super.put(key, value);
214         return this;
215     }
216 }