ExtensionResultUtil.java 3.51 KB
Newer Older
284718418@qq.com committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
package cn.timer.api.utils;

import org.springframework.stereotype.Service;

/**
 * @author wuqingjun
 * @email 284718418@qq.com
 * @date 2021/12/13
 */
@Service("extensionResultUtil")
public class ExtensionResultUtil<T> {

//	private static final String CODE_KEY = "code";
//	private static final String RESULT_KEY = "result";
//	private static final String MESSAGE_KEY = "message";
//	private static final String DATA_KEY = "data";
//
//	private static final String PAGE_KEY = "page";
//	private static final String NUMBER_KEY = "number";
//	private static final String SIZE_KEY = "size";
//	private static final String TOTALELEMENTS_KEY = "totalelements";
//	private static final String TOTALPAGES_KEY = "totalpages";
//	private static final String OFFSET_KEY = "offset";

	private static final String MESSAGE_SUCCESS = "操作成功";
	private static final String MESSAGE_FAIL = "操作失败";
//	private static final String MESSAGE_ERROR = "操作错误";
//	private static final String MESSAGE_KICKOUT = "当前账户已在其他地方登录,请重新登录";
	private static final String MESSAGE_PARAMERROR = "参数错误";
//	private static final String MESSAGE_UNAUTHORIZED = "授权错误";
//	private static final String MESSAGE_UNAUTHENTICATED = "认证错误";
//	private static final String MESSAGE_EXCEPTION = "服务器异常";

	private static final Integer STATUS_CODE_SUCCESS = 200;
	private static final Integer STATUS_CODE_UNLOGIN = 301;
	private static final Integer STATUS_CODE_UNPARAM = 400;
	private static final Integer STATUS_CODE_EXCEPTION = 500;

	private ExtensionResult<T> extensionResult;

	public ExtensionResultUtil() {
		extensionResult = new ExtensionResult<>();
		extensionResult.setResult(true);
		extensionResult.setMsg("success");
284718418@qq.com committed
45
		this.extensionResult.setErrormsg("");
284718418@qq.com committed
46 47 48 49 50 51 52
		extensionResult.setResultcode(STATUS_CODE_SUCCESS);
	}

	public ExtensionResult<T> setData(T t) {
		this.extensionResult.setData(t);
		this.extensionResult.setResultcode(STATUS_CODE_SUCCESS);
		this.extensionResult.setMsg("success");
284718418@qq.com committed
53
		this.extensionResult.setErrormsg("");
284718418@qq.com committed
54 55 56 57 58 59 60
		return this.extensionResult;
	}

	public ExtensionResult<T> setSuccessMsg(String msg) {
		this.extensionResult.setResult(true);
		this.extensionResult.setResultcode(STATUS_CODE_SUCCESS);
		this.extensionResult.setMsg(msg);
284718418@qq.com committed
61
		this.extensionResult.setErrormsg("");
284718418@qq.com committed
62 63 64 65 66 67 68 69 70
		this.extensionResult.setData(null);
		return this.extensionResult;
	}


	public ExtensionResult<T> setData(T t, String msg) {
		this.extensionResult.setData(t);
		this.extensionResult.setResultcode(STATUS_CODE_SUCCESS);
		this.extensionResult.setMsg(msg);
284718418@qq.com committed
71
		this.extensionResult.setErrormsg("");
284718418@qq.com committed
72 73 74 75 76 77 78
		return this.extensionResult;
	}
	
	public ExtensionResult<T> setErrorMsg(T t) {
		this.extensionResult.setData(t);
		this.extensionResult.setResultcode(STATUS_CODE_UNPARAM);
		this.extensionResult.setErrormsg(MESSAGE_PARAMERROR);
284718418@qq.com committed
79
		this.extensionResult.setMsg("");
284718418@qq.com committed
80 81 82 83 84
		return this.extensionResult;
	}

	public ExtensionResult<T> setErrorMsg(String msg) {
		this.extensionResult.setResult(false);
284718418@qq.com committed
85
		this.extensionResult.setMsg("");
284718418@qq.com committed
86 87 88 89 90 91 92 93
		this.extensionResult.setErrormsg(msg);
		this.extensionResult.setResultcode(STATUS_CODE_EXCEPTION);
		return this.extensionResult;
	}

	public ExtensionResult<T> setErrorMsg(Integer code, String msg) {
		this.extensionResult.setResult(false);
		this.extensionResult.setErrormsg(msg);
284718418@qq.com committed
94
		this.extensionResult.setMsg("");
284718418@qq.com committed
95 96 97 98 99 100 101 102 103
		this.extensionResult.setResultcode(code);
		return this.extensionResult;
	}

	public static <T> ExtensionResult<T> data(T t) {
		return new ExtensionResultUtil<T>().setData(t);
	}

}