/* * Copyright (c) 2018-2999 广州市蓝海创新科技有限公司 All rights reserved. * * https://www.mall4j.com/ * * 未经允许,不可做商业用途! * * 版权所有,侵权必究! */ package com.yami.trading.common.serializer.springfox; import io.swagger.models.Operation; import io.swagger.models.Swagger; import io.swagger.models.parameters.Parameter; import springfox.documentation.spring.web.json.JacksonModuleRegistrar; import springfox.documentation.spring.web.json.Json; import springfox.documentation.spring.web.json.JsonSerializer; import java.util.List; /** * 自定义Swagger 的序列化,去除分页参数中的records值 * @author LGH */ public class SpringfoxJsonSerializer extends JsonSerializer { public SpringfoxJsonSerializer(List modules) { super(modules); } @Override public Json toJson(Object toSerialize) { if (!(toSerialize instanceof Swagger)) { return super.toJson(toSerialize); } Swagger swagger = (Swagger)toSerialize; swagger.getPaths().forEach((key, path) ->{ Operation get = path.getGet(); if (get != null) { List parameters = get.getParameters(); if (parameters != null) { parameters.removeIf(parameter -> parameter.getName().startsWith("records[0].")); } } }); return super.toJson(swagger); // return super.toJson(toSerialize); } }