parent
7a49d79707
commit
6578d4f525
@ -0,0 +1,44 @@ |
|||||||
|
package com.unionmed.framework.spring.mvc; |
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject; |
||||||
|
import com.unionmed.framework.util.ObjectUtils; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author ianChen |
||||||
|
* @date 2023/6/6 10:48 |
||||||
|
*/ |
||||||
|
public final class BaseReturnUtils { |
||||||
|
|
||||||
|
public static BaseReturn parse(JSONObject jsn) { |
||||||
|
if (ObjectUtils.isEmpty(jsn)) { |
||||||
|
return BaseReturn.suc(BaseReturn.suc()); |
||||||
|
} |
||||||
|
if (isBaseReturnFormat(jsn)) { |
||||||
|
Object data = jsn.get("data"); |
||||||
|
if (data instanceof JSONObject) { |
||||||
|
return parse(jsn, (JSONObject) data); |
||||||
|
} else if (data instanceof String) { |
||||||
|
String sData = (String) data; |
||||||
|
if (sData.startsWith("{") && sData.endsWith("}")) { |
||||||
|
return parse(jsn, JSONObject.parseObject(sData)); |
||||||
|
} |
||||||
|
} else { |
||||||
|
return BaseReturn.suc(BaseReturn.inst(jsn.getIntValue("code"), data, jsn.getString("message"))); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
return BaseReturn.suc(BaseReturn.suc(jsn)); |
||||||
|
} |
||||||
|
|
||||||
|
private static BaseReturn parse(JSONObject jsn, JSONObject jData) { |
||||||
|
if (isBaseReturnFormat(jData)) { |
||||||
|
return BaseReturn.inst(jsn.getIntValue("code"), BaseReturn.inst(jData.getIntValue("code"), jData.get("data"), jData.getString("message")), jsn.getString("message")); |
||||||
|
} else { |
||||||
|
return BaseReturn.suc(BaseReturn.inst(jsn.getIntValue("code"), jsn.get("data"), jsn.getString("message"))); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
private static boolean isBaseReturnFormat(JSONObject jsn) { |
||||||
|
return jsn.containsKey("code") && jsn.containsKey("message") && jsn.containsKey("data"); |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue