1. 单层数据模板调整

master
陈峰 1 year ago
parent 7a49d79707
commit 6578d4f525
  1. 2
      framework-core/pom.xml
  2. 10
      framework-core/src/main/java/com/unionmed/framework/spring/mvc/BaseReturn.java
  3. 44
      framework-core/src/main/java/com/unionmed/framework/spring/mvc/BaseReturnUtils.java
  4. 9
      framework-core/src/main/java/com/unionmed/framework/spring/mvc/datatemplate/SingleNestDataTemplate.java
  5. 2
      framework-orm/pom.xml
  6. 2
      framework-test/pom.xml
  7. 2
      pom.xml

@ -5,7 +5,7 @@
<parent>
<groupId>com.unionmed</groupId>
<artifactId>unionmed-framework</artifactId>
<version>0.0.6</version>
<version>0.0.8</version>
</parent>
<modelVersion>4.0.0</modelVersion>

@ -12,6 +12,7 @@ public class BaseReturn<T> {
@ApiModelProperty(value = "编码", required = true, example = "200")
private int code;
@Deprecated
@ApiModelProperty(value = "编码(兼容的,推荐使用code。未来该字段将被删除)", required = true, example = "200")
private int errCode;
@ApiModelProperty(value = "信息提示", required = true, example = "成功")
@ -79,6 +80,15 @@ public class BaseReturn<T> {
return inst(ReturnCode.FAIL.getCode(), data, message);
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
this.errCode = code;
}
public int getErrCode() {
return errCode;
}

@ -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");
}
}

@ -1,6 +1,8 @@
package com.unionmed.framework.spring.mvc.datatemplate;
import com.alibaba.fastjson.JSONObject;
import com.unionmed.framework.spring.mvc.BaseReturn;
import com.unionmed.framework.spring.mvc.BaseReturnUtils;
import org.springframework.stereotype.Component;
/**
@ -22,6 +24,13 @@ public class SingleNestDataTemplate implements DataTemplate {
if (((BaseReturn) returnValue).getData() instanceof BaseReturn) {
returnValue = ((BaseReturn) returnValue).getData();
}
} else if (returnValue instanceof JSONObject) {
returnValue = BaseReturnUtils.parse((JSONObject) returnValue).getData();
} else if (returnValue instanceof String) {
String sData = (String) returnValue;
if (sData.startsWith("{") && sData.endsWith("}")) {
returnValue = BaseReturnUtils.parse(JSONObject.parseObject(sData)).getData();
}
} else {
returnValue = BaseReturn.suc(returnValue);
}

@ -5,7 +5,7 @@
<parent>
<artifactId>unionmed-framework</artifactId>
<groupId>com.unionmed</groupId>
<version>0.0.6</version>
<version>0.0.8</version>
</parent>
<modelVersion>4.0.0</modelVersion>

@ -5,7 +5,7 @@
<parent>
<groupId>com.unionmed</groupId>
<artifactId>unionmed-framework</artifactId>
<version>0.0.6</version>
<version>0.0.8</version>
</parent>
<modelVersion>4.0.0</modelVersion>

@ -9,7 +9,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.unionmed</groupId>
<artifactId>unionmed-framework</artifactId>
<version>0.0.6</version>
<version>0.0.8</version>
<packaging>pom</packaging>
<name>unionmed-framework</name>

Loading…
Cancel
Save