接口返回数据与当前做兼容
This commit is contained in:
parent
28e15fe975
commit
7af650deb5
@ -84,6 +84,11 @@ public class ApplicationReadyInfoAutoConfiguration {
|
|||||||
s.append("\tSwaggerUI:\t\t").append(protocol).append("://").append(ip)
|
s.append("\tSwaggerUI:\t\t").append(protocol).append("://").append(ip)
|
||||||
.append(":").append(port).append("/swagger-ui.html\n");
|
.append(":").append(port).append("/swagger-ui.html\n");
|
||||||
}
|
}
|
||||||
|
String knife4jPageLocation = "classpath:META-INF/resources/doc.html";
|
||||||
|
if (Seq.of(activeProfiles).contains("swagger") && Resources.exists(knife4jPageLocation)) {
|
||||||
|
s.append("\tSwaggerUI:\t\t").append(protocol).append("://").append(ip)
|
||||||
|
.append(":").append(port).append("/doc.html\n");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
s.append("\tProfile(s):\t\t").append(Arrays.toString(activeProfiles)).append("\n");
|
s.append("\tProfile(s):\t\t").append(Arrays.toString(activeProfiles)).append("\n");
|
||||||
s.append("----------------------------------------------------------------");
|
s.append("----------------------------------------------------------------");
|
||||||
|
|||||||
@ -1,17 +1,18 @@
|
|||||||
package cn.axzo.framework.autoconfigure.jackson;
|
package cn.axzo.framework.autoconfigure.jackson;
|
||||||
|
|
||||||
|
import static com.fasterxml.jackson.annotation.JsonInclude.Include.USE_DEFAULTS;
|
||||||
|
import static com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER;
|
||||||
|
import static com.fasterxml.jackson.databind.DeserializationFeature.ACCEPT_FLOAT_AS_INT;
|
||||||
|
import static com.fasterxml.jackson.databind.DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY;
|
||||||
|
import static com.fasterxml.jackson.databind.DeserializationFeature.READ_DATE_TIMESTAMPS_AS_NANOSECONDS;
|
||||||
|
import static com.fasterxml.jackson.databind.MapperFeature.PROPAGATE_TRANSIENT_MARKER;
|
||||||
|
import static com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS;
|
||||||
|
|
||||||
|
import java.util.TimeZone;
|
||||||
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
||||||
import org.springframework.core.Ordered;
|
import org.springframework.core.Ordered;
|
||||||
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
|
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
|
||||||
|
|
||||||
import java.util.TimeZone;
|
|
||||||
|
|
||||||
import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_ABSENT;
|
|
||||||
import static com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER;
|
|
||||||
import static com.fasterxml.jackson.databind.DeserializationFeature.*;
|
|
||||||
import static com.fasterxml.jackson.databind.MapperFeature.PROPAGATE_TRANSIENT_MARKER;
|
|
||||||
import static com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description
|
* @Description
|
||||||
* @Author liyong.tian
|
* @Author liyong.tian
|
||||||
@ -22,7 +23,7 @@ public class JacksonCustomer implements Jackson2ObjectMapperBuilderCustomizer, O
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void customize(Jackson2ObjectMapperBuilder builder) {
|
public void customize(Jackson2ObjectMapperBuilder builder) {
|
||||||
builder.serializationInclusion(NON_ABSENT);
|
builder.serializationInclusion(USE_DEFAULTS);
|
||||||
builder.timeZone(TimeZone.getDefault());
|
builder.timeZone(TimeZone.getDefault());
|
||||||
|
|
||||||
// disable
|
// disable
|
||||||
|
|||||||
@ -49,7 +49,6 @@ public class PageImpl<T> implements Page<T> {
|
|||||||
}
|
}
|
||||||
return new PageImpl<>(result, current, total);
|
return new PageImpl<>(result, current, total);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
public <S> Page<S> mapAll(Function<List<T>, List<S>> mapper) {
|
public <S> Page<S> mapAll(Function<List<T>, List<S>> mapper) {
|
||||||
|
|||||||
@ -16,10 +16,10 @@ import java.util.stream.Stream;
|
|||||||
@Description("基础错误码")
|
@Description("基础错误码")
|
||||||
public enum BaseCode implements IModuleRespCode{
|
public enum BaseCode implements IModuleRespCode{
|
||||||
|
|
||||||
SUCCESS("000", "成功", 200) {
|
SUCCESS("000", "success", 200) {
|
||||||
@Override
|
@Override
|
||||||
public String getRespCode() {
|
public String getRespCode() {
|
||||||
return "0";
|
return "200";
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
BAD_REQUEST("400", "请求参数错误", 400),
|
BAD_REQUEST("400", "请求参数错误", 400),
|
||||||
|
|||||||
@ -10,7 +10,7 @@ import lombok.Data;
|
|||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
import java.beans.Transient;
|
import java.beans.Transient;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
@ -23,8 +23,8 @@ import static jodd.util.StringUtil.isNotBlank;
|
|||||||
* @Date 2020/9/7 20:28
|
* @Date 2020/9/7 20:28
|
||||||
**/
|
**/
|
||||||
@Data
|
@Data
|
||||||
@AllArgsConstructor
|
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
@JsonPropertyOrder({"code", "msg", "data"})
|
@JsonPropertyOrder({"code", "msg", "data"})
|
||||||
public abstract class ApiCoreResult<E> implements Result {
|
public abstract class ApiCoreResult<E> implements Result {
|
||||||
|
|
||||||
@ -74,7 +74,7 @@ public abstract class ApiCoreResult<E> implements Result {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> toMap() {
|
public Map<String, Object> toMap() {
|
||||||
Map<String, Object> map = new LinkedHashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("code", code);
|
map.put("code", code);
|
||||||
map.put("msg", msg);
|
map.put("msg", msg);
|
||||||
map.put("data", data);
|
map.put("data", data);
|
||||||
|
|||||||
@ -60,7 +60,7 @@ public class ApiListResult<E> extends ApiCoreResult<List<E>> {
|
|||||||
return new ApiListResult<>(code, message, data);
|
return new ApiListResult<>(code, message, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ConstructorProperties({"code", "message", "data"})
|
@ConstructorProperties({"code", "msg", "data"})
|
||||||
public ApiListResult(String code, String message, List<E> data) {
|
public ApiListResult(String code, String message, List<E> data) {
|
||||||
super(code, message, data);
|
super(code, message, data);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,18 +1,12 @@
|
|||||||
package cn.axzo.framework.domain.web.result;
|
package cn.axzo.framework.domain.web.result;
|
||||||
|
|
||||||
import cn.axzo.framework.domain.page.Page;
|
import cn.axzo.framework.domain.page.*;
|
||||||
import cn.axzo.framework.domain.page.PageImpl;
|
|
||||||
import cn.axzo.framework.domain.page.PageResp;
|
|
||||||
import cn.axzo.framework.domain.page.PageVerbose;
|
|
||||||
import cn.axzo.framework.domain.page.Pageable;
|
|
||||||
import cn.axzo.framework.domain.web.code.IRespCode;
|
import cn.axzo.framework.domain.web.code.IRespCode;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
import lombok.ToString;
|
import lombok.ToString;
|
||||||
|
|
||||||
import java.beans.ConstructorProperties;
|
import java.beans.ConstructorProperties;
|
||||||
@ -29,22 +23,9 @@ import static com.google.common.collect.Lists.newArrayList;
|
|||||||
* @Date 2020/9/7 20:32
|
* @Date 2020/9/7 20:32
|
||||||
**/
|
**/
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
|
||||||
@ToString(callSuper = true)
|
@ToString(callSuper = true)
|
||||||
@JsonPropertyOrder({"total", "code", "msg", "data", "pageNum", "pageSize", "verbose"})
|
@JsonPropertyOrder({"code", "msg", "data"})
|
||||||
public class ApiPageResult<E> extends ApiCoreResult<List<E>> {
|
public class ApiPageResult<E> extends ApiCoreResult<PageData<E>>{
|
||||||
|
|
||||||
@ApiModelProperty(value = "总记录数", position = 101, required = true)
|
|
||||||
private final Long total;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "当前页", position = 102)
|
|
||||||
private final Integer pageNum;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "每页显示数量", position = 103)
|
|
||||||
private final Integer pageSize;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "分页冗余信息", position = 104)
|
|
||||||
private final PageVerbose verbose;
|
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> empty() {
|
public static <E> ApiPageResult<E> empty() {
|
||||||
return ok(newArrayList(), 0L);
|
return ok(newArrayList(), 0L);
|
||||||
@ -90,7 +71,7 @@ public class ApiPageResult<E> extends ApiCoreResult<List<E>> {
|
|||||||
|
|
||||||
public static <E> ApiPageResult<E> ok(List<E> data, Long total) {
|
public static <E> ApiPageResult<E> ok(List<E> data, Long total) {
|
||||||
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data,
|
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data,
|
||||||
null, null, null);
|
null, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize) {
|
public static <E> ApiPageResult<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize) {
|
||||||
@ -98,7 +79,7 @@ public class ApiPageResult<E> extends ApiCoreResult<List<E>> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize,
|
public static <E> ApiPageResult<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize,
|
||||||
PageVerbose verbose) {
|
PageVerbose verbose) {
|
||||||
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data, pageNumber, pageSize, verbose);
|
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data, pageNumber, pageSize, verbose);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -119,28 +100,31 @@ public class ApiPageResult<E> extends ApiCoreResult<List<E>> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> build(Long total, IRespCode code, List<E> data,
|
public static <E> ApiPageResult<E> build(Long total, IRespCode code, List<E> data,
|
||||||
Integer pageNum, Integer pageSize) {
|
Integer pageNum, Integer pageSize) {
|
||||||
return build(total, code.getRespCode(), code.getMessage(), data, pageNum, pageSize, null);
|
return build(total, code.getRespCode(), code.getMessage(), data, pageNum, pageSize, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> build(Long total, String code, String message, List<E> data,
|
public static <E> ApiPageResult<E> build(Long total, String code, String message, List<E> data,
|
||||||
Integer pageNum, Integer pageSize) {
|
Integer pageNum, Integer pageSize) {
|
||||||
return new ApiPageResult<>(total, code, message, data, pageNum, pageSize, null);
|
return new ApiPageResult<>(total, code, message, data, pageNum, pageSize, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <E> ApiPageResult<E> build(Long total, String code, String message, List<E> data,
|
public static <E> ApiPageResult<E> build(Long total, String code, String message, List<E> data,
|
||||||
Integer pageNum, Integer pageSize, PageVerbose verbose) {
|
Integer pageNum, Integer pageSize, PageVerbose verbose) {
|
||||||
return new ApiPageResult<>(total, code, message, data, pageNum, pageSize, verbose);
|
return new ApiPageResult<>(total, code, message, data, pageNum, pageSize, verbose);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ConstructorProperties({"total", "code", "message", "data", "pageNum", "pageSize", "verbose"})
|
@ConstructorProperties({"code", "msg", "data"})
|
||||||
public ApiPageResult(Long total, String code, String message, List<E> data, Integer pageNum, Integer pageSize,
|
public ApiPageResult(Long total, String code, String message, List<E> list, Integer pageNum, Integer pageSize,
|
||||||
PageVerbose verbose) {
|
PageVerbose verbose) {
|
||||||
super(code, message, data);
|
PageData<E> data = new PageData<E>();
|
||||||
this.total = total;
|
data.setList(list);
|
||||||
this.pageNum = pageNum;
|
data.setTotalCount(total);
|
||||||
this.pageSize = pageSize;
|
data.setPageNum(pageNum);
|
||||||
this.verbose = verbose;
|
data.setPageSize(pageSize);
|
||||||
|
this.code = code;
|
||||||
|
this.msg = message;
|
||||||
|
this.data = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -148,15 +132,11 @@ public class ApiPageResult<E> extends ApiCoreResult<List<E>> {
|
|||||||
Map<String, Object> map = new LinkedHashMap<>();
|
Map<String, Object> map = new LinkedHashMap<>();
|
||||||
map.put("code", code);
|
map.put("code", code);
|
||||||
map.put("msg", msg);
|
map.put("msg", msg);
|
||||||
map.put("total", total);
|
|
||||||
map.put("data", data);
|
map.put("data", data);
|
||||||
map.put("pageNum", pageNum);
|
|
||||||
map.put("pageSize", pageSize);
|
|
||||||
map.put("verbose", verbose);
|
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Page<E> toPage(Pageable pageable) {
|
public Page<E> toPage(Pageable pageable) {
|
||||||
return new PageImpl<>(data == null ? Lists.newArrayList() : data, pageable, total);
|
return new PageImpl<>(data == null ? Lists.newArrayList() : data.getList(), pageable, data.getTotalCount());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,161 @@
|
|||||||
|
package cn.axzo.framework.domain.web.result;
|
||||||
|
|
||||||
|
import static cn.axzo.framework.domain.web.code.BaseCode.SUCCESS;
|
||||||
|
import static com.google.common.collect.Lists.newArrayList;
|
||||||
|
|
||||||
|
import cn.axzo.framework.domain.page.Page;
|
||||||
|
import cn.axzo.framework.domain.page.PageImpl;
|
||||||
|
import cn.axzo.framework.domain.page.PageResp;
|
||||||
|
import cn.axzo.framework.domain.page.PageVerbose;
|
||||||
|
import cn.axzo.framework.domain.page.Pageable;
|
||||||
|
import cn.axzo.framework.domain.web.code.IRespCode;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||||
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import java.beans.ConstructorProperties;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.ToString;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description
|
||||||
|
* @Author liyong.tian
|
||||||
|
* @Date 2020/9/7 20:32
|
||||||
|
**/
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@JsonPropertyOrder({"total", "code", "msg", "data", "pageNum", "pageSize", "verbose"})
|
||||||
|
public class ApiPageResult1<E> extends ApiCoreResult<List<E>> {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "总记录数", position = 101, required = true)
|
||||||
|
private final Long total;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "当前页", position = 102)
|
||||||
|
private final Integer pageNum;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "每页显示数量", position = 103)
|
||||||
|
private final Integer pageSize;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "分页冗余信息", position = 104)
|
||||||
|
private final PageVerbose verbose;
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> empty() {
|
||||||
|
return ok(newArrayList(), 0L);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(Page<E> page) {
|
||||||
|
Pageable current = page.current();
|
||||||
|
|
||||||
|
// data
|
||||||
|
List<E> data = page.getContent();
|
||||||
|
if (!current.needContent() && data.isEmpty()) {
|
||||||
|
data = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// pageNum & pageSize
|
||||||
|
Integer pageNum = null;
|
||||||
|
Integer pageSize = null;
|
||||||
|
if (current.isFixEdge() && current.needContent()) {
|
||||||
|
pageNum = current.getPageNumber();
|
||||||
|
pageSize = current.getPageSize();
|
||||||
|
}
|
||||||
|
|
||||||
|
// verbose
|
||||||
|
PageVerbose verbose = PageVerbose.of(page).orElse(null);
|
||||||
|
return ok(data, page.getTotal(), pageNum, pageSize, verbose);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1 ok(PageInfo<E> pageInfo) {
|
||||||
|
return ok(pageInfo.getList(), pageInfo.getTotal(), pageInfo.getPageNum(), pageInfo.getPageSize());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(org.springframework.data.domain.Page<E> page) {
|
||||||
|
return ok(page.getContent(), page.getTotalElements());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(IPage<E> page) {
|
||||||
|
return ok(page.getRecords(), page.getTotal(), (int)page.getCurrent(), (int)page.getSize());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(PageResp<E> page) {
|
||||||
|
return ok(page.getList(), page.getTotalCount(), page.getPage().intValue(), page.getPageSize().intValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(List<E> data, Long total) {
|
||||||
|
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data,
|
||||||
|
null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize) {
|
||||||
|
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data, pageNumber, pageSize, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> ok(List<E> data, Long total, Integer pageNumber, Integer pageSize,
|
||||||
|
PageVerbose verbose) {
|
||||||
|
return build(total, SUCCESS.getRespCode(), SUCCESS.getMessage(), data, pageNumber, pageSize, verbose);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> err(IRespCode code) {
|
||||||
|
return build(code);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> err(IRespCode code, String message) {
|
||||||
|
return err(code.getRespCode(), message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> err(String code, String message) {
|
||||||
|
return build(null, code, message, null, null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> build(IRespCode code) {
|
||||||
|
return build(null, code, null, null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> build(Long total, IRespCode code, List<E> data,
|
||||||
|
Integer pageNum, Integer pageSize) {
|
||||||
|
return build(total, code.getRespCode(), code.getMessage(), data, pageNum, pageSize, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> build(Long total, String code, String message, List<E> data,
|
||||||
|
Integer pageNum, Integer pageSize) {
|
||||||
|
return new ApiPageResult1<>(total, code, message, data, pageNum, pageSize, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <E> ApiPageResult1<E> build(Long total, String code, String message, List<E> data,
|
||||||
|
Integer pageNum, Integer pageSize, PageVerbose verbose) {
|
||||||
|
return new ApiPageResult1<>(total, code, message, data, pageNum, pageSize, verbose);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConstructorProperties({"total", "code", "message", "data", "pageNum", "pageSize", "verbose"})
|
||||||
|
public ApiPageResult1(Long total, String code, String message, List<E> data, Integer pageNum, Integer pageSize,
|
||||||
|
PageVerbose verbose) {
|
||||||
|
super(code, message, data);
|
||||||
|
this.total = total;
|
||||||
|
this.pageNum = pageNum;
|
||||||
|
this.pageSize = pageSize;
|
||||||
|
this.verbose = verbose;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> toMap() {
|
||||||
|
Map<String, Object> map = new LinkedHashMap<>();
|
||||||
|
map.put("code", code);
|
||||||
|
map.put("msg", msg);
|
||||||
|
map.put("total", total);
|
||||||
|
map.put("data", data);
|
||||||
|
map.put("pageNum", pageNum);
|
||||||
|
map.put("pageSize", pageSize);
|
||||||
|
map.put("verbose", verbose);
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Page<E> toPage(Pageable pageable) {
|
||||||
|
return new PageImpl<>(data == null ? Lists.newArrayList() : data, pageable, total);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,33 @@
|
|||||||
|
package cn.axzo.framework.domain.web.result;
|
||||||
|
|
||||||
|
import cn.axzo.framework.domain.page.PageVerbose;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class PageData<E> {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "列表", position = 100, required = true)
|
||||||
|
private List<E> list;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "总记录数", position = 101, required = true)
|
||||||
|
private Long totalCount;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "当前页", position = 102)
|
||||||
|
private Integer pageNum;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "每页显示数量", position = 103)
|
||||||
|
private Integer pageSize;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "分页冗余信息", position = 104)
|
||||||
|
// private PageVerbose verbose;
|
||||||
|
|
||||||
|
}
|
||||||
@ -37,13 +37,11 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.pagehelper</groupId>
|
<groupId>com.github.pagehelper</groupId>
|
||||||
<artifactId>pagehelper</artifactId>
|
<artifactId>pagehelper</artifactId>
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.baomidou</groupId>
|
<groupId>com.baomidou</groupId>
|
||||||
<artifactId>mybatis-plus-core</artifactId>
|
<artifactId>mybatis-plus-core</artifactId>
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
@ -1,6 +1,7 @@
|
|||||||
package cn.axzo.framework.web.http;
|
package cn.axzo.framework.web.http;
|
||||||
|
|
||||||
import cn.axzo.framework.domain.page.PageResp;
|
import cn.axzo.framework.domain.page.PageResp;
|
||||||
|
import cn.axzo.framework.domain.web.result.PageData;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import cn.axzo.framework.core.net.Nets;
|
import cn.axzo.framework.core.net.Nets;
|
||||||
@ -20,7 +21,7 @@ import java.util.List;
|
|||||||
* @author liyong.tian
|
* @author liyong.tian
|
||||||
* @since 2017/11/14 下午7:52
|
* @since 2017/11/14 下午7:52
|
||||||
*/
|
*/
|
||||||
public class ApiPageEntity<E> extends ApiCoreEntity<List<E>, ApiPageResult<E>> {
|
public class ApiPageEntity<E> extends ApiCoreEntity<PageData<E>, ApiPageResult<E>> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new {@code HttpEntity} with the given body, headers, and status code.
|
* Create a new {@code HttpEntity} with the given body, headers, and status code.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user