ResponseMsgBuilder.java
package com.mycim.webapp;
import com.fa.sesa.exception.ErrorCode;
import com.fa.sesa.exception.SystemIllegalException;
import com.fa.sesa.i18n.I18nUtils;
import com.mycim.framework.utils.exception.ExceptionUtils;
import com.mycim.framework.utils.lang.StringUtils;
import com.mycim.framework.utils.msg.JsonUtils;
import com.mycim.framework.utils.msg.model.RequestHeader;
import com.mycim.framework.utils.msg.model.Response;
import com.mycim.framework.utils.msg.model.ResponseHeader;
/**
* 构建回复消息
*
* @author Johnson Wang
* @date 2019/7/24 17:29
**/
public class ResponseMsgBuilder {
public static String buildSuccessJsonMsg(Object responseBody) {
return buildSuccessJsonMsg(responseBody, new RequestHeader());
}
public static String buildSuccessJsonMsg(Object responseBody, RequestHeader requestHeader) {
return buildSuccessJsonMsg(null, responseBody, requestHeader);
}
public static String buildSuccessJsonMsg(String msgId, Object responseBody, RequestHeader requestHeader) {
return buildSuccessJsonMsg(msgId, StringUtils.EMPTY, responseBody, requestHeader);
}
public static String buildSuccessJsonMsg(String msgId, String defaultMsg, Object responseBody,
RequestHeader requestHeader) {
Response response = new Response();
ResponseHeader responseHeader = new ResponseHeader(requestHeader);
responseHeader.setCode(ErrorCode.success.getErrCode());
responseHeader.setMessage(msgId);
responseHeader.setSubMessage(StringUtils.isEmpty(responseHeader.getMessage()) ? null : I18nUtils
.getMessage(responseHeader.getMessage(), defaultMsg));
response.setHead(responseHeader);
response.setBody(responseBody);
return JsonUtils.toString(response);
}
public static String buildSuccessJsonMsg() {
Response response = new Response();
ResponseHeader responseHeader = new ResponseHeader();
responseHeader.setCode(ErrorCode.success.getErrCode());
responseHeader.setMessage("system.success");
responseHeader.setSubMessage(I18nUtils.getMessage(responseHeader.getMessage()));
response.setHead(responseHeader);
return JsonUtils.toString(response);
}
public static String buildSuccessJsonMsg(RequestHeader requestHeader) {
Response response = new Response();
ResponseHeader responseHeader = new ResponseHeader(requestHeader);
responseHeader.setCode(ErrorCode.success.getErrCode());
responseHeader.setMessage("system.success");
responseHeader.setSubMessage(I18nUtils.getMessage(responseHeader.getMessage()));
response.setHead(responseHeader);
return JsonUtils.toString(response);
}
public static String buildErrorJsonMsg(Throwable e) {
SystemIllegalException systemIllegalException = ExceptionUtils.findSystemException(e);
Response response = new Response();
ResponseHeader responseHeader = new ResponseHeader();
responseHeader.setCode(systemIllegalException.getCode().getErrCode());
String sysErrorInfo = systemIllegalException.getMessage();
responseHeader.setMessage(sysErrorInfo);
responseHeader.setSubMessage(sysErrorInfo);
response.setHead(responseHeader);
return JsonUtils.toString(response);
}
}