package com.ld.igds.util; import com.ld.igds.constant.RespCodeEnum; import com.ld.igds.data.Request; import com.ld.igds.data.Response; /** * @author: andy.jia * @description: 用于同一响应值的返回封装 * @date:2019.03.04 **/ @SuppressWarnings({"unchecked","rawtypes"}) public class RespUtil { /** * 响应成功,根据req自动回填需要的参数 * * @param data * @param req * @return */ public static Response success(Object data, Request req) { return new Response(RespCodeEnum.CODE_0000.getCode(),RespCodeEnum.CODE_0000.getMsg(), req.getOutId(), data); } /** * 响应异常的封装,自定义异常编码和原因 * * @param code * @param msg * @param req * @return */ public static Response error(RespCodeEnum code, Request req, String msg) { return error(code,req.getOutId(),msg); } public static Response error(RespCodeEnum code, String msg) { return new Response(code,null, msg); } /** * * @param code * @param outId * @param msg * @return */ public static Response error(RespCodeEnum code, String outId, String msg) { if (null == msg) { return new Response(code,outId, code.getMsg() ); } return new Response(code, outId, msg); } /** * 响应异常的封装,通过编码获取异常原因 * * @param code * @param req * @return */ public static Response error(RespCodeEnum code, Request req) { return new Response(code.getCode(),code.getMsg(), req.getOutId(),null); } }