利用Swagger Maven Plugin生成Rest API文档

一、在pom中添加插件:

            
                com.github.kongchen
                swagger-maven-plugin
                3.1.0
                
                    
                        
                            
                            true
                            
                            us.wili.dev.admin.controller
                            
                            http,https
                            
                            localhost:8030
                            
                            /api
                            
                            
                                文档搜索器
                                v1
                                
                                    文档搜索器-API
                                
                            
                            
                            ${project.basedir}/src/main/resources/template/strapdown.html.hbs
                            
                            ${project.basedir}/src/main/resources/generated/document.html
                            ${basedir}/src/main/resources/generated/swagger-ui

                        
                    
                
                
                
                    
                        compile
                        
                            generate
                        
                    
                
            


二、添加Swagger 模板文件

    1、starpdown.html.hbs



API Document


    {{>markdown}}



    2、markdown.hbs

#{{#info}}{{title}}


## {{join schemes " | "}}://{{host}}{{basePath}}


{{description}}

{{#contact}}
[**Contact the developer**](mailto:{{email}})
{{/contact}}

**Version** {{version}}

[**Terms of Service**]({{termsOfService}})

{{#license}}[**{{name}}**]({{url}}){{/license}}

{{/info}}

{{#if consumes}}**Consumes:** {{join consumes ", "}}{{/if}}

{{#if produces}}**Produces:** {{join produces ", "}}{{/if}}

{{#if securityDefinitions}}
# Security Definitions
{{/if}}
{{> security}}

# APIs

{{#each paths}}
## {{@key}}
{{#this}}
{{#get}}
### GET
{{> operation}}
{{/get}}

{{#put}}
### PUT
{{> operation}}
{{/put}}

{{#post}}
### POST

{{> operation}}

{{/post}}

{{#delete}}
### DELETE
{{> operation}}
{{/delete}}

{{#option}}
### OPTION
{{> operation}}
{{/option}}

{{#patch}}
### PATCH
{{> operation}}
{{/patch}}

{{#head}}
### HEAD
{{> operation}}
{{/head}}

{{/this}}
{{/each}}

# Definitions
{{#each definitions}}
## {{@key}}


    {{#each this.properties}}
        
    {{/each}}
name type required description example
{{@key}} {{#ifeq type "array"}} {{#items.$ref}} {{type}}[{{basename items.$ref}}] {{/items.$ref}} {{^items.$ref}}{{type}}[{{items.type}}]{{/items.$ref}} {{else}} {{#$ref}}{{basename $ref}}{{/$ref}} {{^$ref}}{{type}}{{#format}} ({{format}}){{/format}}{{/$ref}} {{/ifeq}} {{#required}}required{{/required}}{{^required}}optional{{/required}} {{#description}}{{{description}}}{{/description}}{{^description}}-{{/description}} {{example}}
{{/each}}

    3、operation.hbs

{{#deprecated}}-deprecated-{{/deprecated}}
{{summary}}

{{description}}

{{#if externalDocs.url}}{{externalDocs.description}}. [See external documents for more details]({{externalDocs.url}})
{{/if}}

{{#if security}}
#### Security
{{/if}}

{{#security}}
{{#each this}}
* {{@key}}
{{#this}}   * {{this}}
{{/this}}
{{/each}}
{{/security}}

#### Request

{{#if consumes}}
**Content-Type: ** {{join consumes ", "}}{{/if}}

##### Parameters
{{#if parameters}}

{{/if}}

{{#parameters}}

{{#ifeq in "body"}}
    
{{else}}
    {{#ifeq type "array"}}
            
    {{else}}
            
    {{/ifeq}}
{{/ifeq}}

{{/parameters}}
{{#if parameters}}
Name Located in Required Description Default Schema
{{name}} {{in}} {{#if required}}yes{{else}}no{{/if}} {{description}}{{#if pattern}} (**Pattern**: `{{pattern}}`){{/if}} - {{#ifeq schema.type "array"}}Array[{{basename schema.items.$ref}}]{{/ifeq}} {{#schema.$ref}}{{basename schema.$ref}} {{/schema.$ref}} Array[{{items.type}}] ({{collectionFormat}}){{type}} {{#format}}({{format}}){{/format}}
{{/if}} #### Response {{#if produces}}**Content-Type: ** {{join produces ", "}}{{/if}} | Status Code | Reason | Response Model | |-------------|-------------|----------------| {{#each responses}}| {{@key}} | {{description}} | {{#schema.$ref}}{{basename schema.$ref}}{{/schema.$ref}}{{#ifeq schema.type "array"}}Array[{{basename schema.items.$ref}}]{{/ifeq}}{{^schema}} - {{/schema}}| {{/each}}

    4、security.hbs

{{#each securityDefinitions}}
### {{@key}}
{{#this}}
{{#ifeq type "oauth2"}}

{{#if description}}
        
{{/if}}
{{#if authorizationUrl}}
        
{{/if}}
{{#if flow}}
        
{{/if}}
{{#if tokenUrl}}
        
{{/if}}
{{#if scopes}}
    
{{#each scopes}}
            
{{/each}}
    
{{/if}}
type {{type}}
description {{description}}
authorizationUrl {{authorizationUrl}}
flow {{flow}}
tokenUrl {{tokenUrl}}
scopes{{@key}} {{this}}
{{/ifeq}} {{#ifeq type "apiKey"}} {{#if description}} {{/if}} {{#if name}} {{/if}} {{#if in}} {{/if}}
type {{type}}
description {{description}}
name {{name}}
in {{in}}
{{/ifeq}} {{#ifeq type "basic"}} {{#if description}} {{/if}}
type {{type}}
description {{description}}
{{/ifeq}} {{/this}} {{/each}}

三、.在该项目下执行mvn clean compile,得到generated/swagger-ui/swagger.json.

利用Swagger Maven Plugin生成Rest API文档_第1张图片

生成的swagger.json:

{
  "swagger" : "2.0",
  "info" : {
    "description" : "文档搜索器-API",
    "version" : "v1",
    "title" : "文档搜索器"
  },
  "host" : "localhost:8030",
  "basePath" : "/api",
  "tags" : [ {
    "name" : "被预约人模块"
  }, {
    "name" : "预约记录模块"
  }, {
    "name" : "管理员模块"
  }, {
    "name" : "预约人模块"
  }, {
    "name" : "列表项模块"
  } ],
  "schemes" : [ "http", "https" ],
  "paths" : {
    "/api/adminUser/checkLogin" : {
      "get" : {
        "tags" : [ "管理员模块" ],
        "summary" : "检查登录状态",
        "description" : "",
        "operationId" : "checkLogin",
        "produces" : [ "application/json;charset=UTF-8" ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/adminUser/checkPhone" : {
      "post" : {
        "tags" : [ "管理员模块" ],
        "summary" : "验证手机号",
        "description" : "",
        "operationId" : "checkPhone",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/PhoneVerificationReqDto"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/HttpServletRequest"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/HttpServletResponse"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/adminUser/findPassword" : {
      "post" : {
        "tags" : [ "管理员模块" ],
        "summary" : "找回密码",
        "description" : "",
        "operationId" : "findPassword",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/PasswordVerificationReqDto"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/HttpServletRequest"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/HttpServletResponse"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/adminUser/getAuthPhoneCaptcha" : {
      "post" : {
        "tags" : [ "管理员模块" ],
        "summary" : "获取验证码-认证",
        "description" : "",
        "operationId" : "getAuthPhoneCaptcha",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "description" : "电话号码",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/HttpServletRequest"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/adminUser/getPersonalInfo" : {
      "get" : {
        "tags" : [ "管理员模块" ],
        "summary" : "获取管理员用户信息",
        "description" : "",
        "operationId" : "getPersonalInfo",
        "produces" : [ "application/json;charset=UTF-8" ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/adminUser/updatePassword" : {
      "post" : {
        "tags" : [ "管理员模块" ],
        "summary" : "更新密码",
        "description" : "",
        "operationId" : "updatePassword",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "description" : "新密码",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "in" : "body",
          "name" : "body",
          "description" : "确认密码",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/enum/listDepartment" : {
      "get" : {
        "tags" : [ "列表项模块" ],
        "summary" : "部门列表",
        "description" : "",
        "operationId" : "listDepartment",
        "produces" : [ "application/json;charset=UTF-8" ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/enum/listLanguages" : {
      "get" : {
        "tags" : [ "列表项模块" ],
        "summary" : "语种列表",
        "description" : "",
        "operationId" : "listLanguages",
        "produces" : [ "application/json;charset=UTF-8" ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationRecord/detail" : {
      "get" : {
        "tags" : [ "预约记录模块" ],
        "summary" : "预约记录详情",
        "description" : "",
        "operationId" : "detail",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "description" : "预约记录 ID",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationRecord/list" : {
      "get" : {
        "tags" : [ "预约记录模块" ],
        "summary" : "分页获取预约记录列表",
        "description" : "",
        "operationId" : "list",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservationRecordQueryReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/PagerResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationRecord/updateStatus" : {
      "post" : {
        "tags" : [ "预约记录模块" ],
        "summary" : "修改记录状态",
        "description" : "",
        "operationId" : "updateStatus",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservationRecordUpdateReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationUser/detail" : {
      "get" : {
        "tags" : [ "预约人模块" ],
        "summary" : "预约记录详情",
        "description" : "",
        "operationId" : "detail",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "description" : "预约记录 ID",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationUser/getRecordList" : {
      "get" : {
        "tags" : [ "预约人模块" ],
        "summary" : "预约记录列表",
        "description" : "",
        "operationId" : "getRecordList",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "description" : "预约人 ID",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ListResponseDto"
            }
          }
        }
      }
    },
    "/api/reservationUser/list" : {
      "get" : {
        "tags" : [ "预约人模块" ],
        "summary" : "分页获取预约人列表",
        "description" : "",
        "operationId" : "list",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservationUserQueryReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/PagerResponseDto"
            }
          }
        }
      }
    },
    "/api/reservedUser/add" : {
      "post" : {
        "tags" : [ "被预约人模块" ],
        "summary" : "新增被预约人",
        "description" : "",
        "operationId" : "add",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservedUserAddReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservedUser/changePassword" : {
      "post" : {
        "tags" : [ "被预约人模块" ],
        "summary" : "修改密码",
        "description" : "",
        "operationId" : "changePassword",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservedUserPasswordVerificationReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservedUser/list" : {
      "get" : {
        "tags" : [ "被预约人模块" ],
        "summary" : "分页获取被预约人列表",
        "description" : "",
        "operationId" : "list",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservedUserQueryReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/PagerResponseDto"
            }
          }
        }
      }
    },
    "/api/reservedUser/update" : {
      "post" : {
        "tags" : [ "被预约人模块" ],
        "summary" : "编辑被预约人",
        "description" : "",
        "operationId" : "update",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservedUserAddReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    },
    "/api/reservedUser/updateStatus" : {
      "post" : {
        "tags" : [ "被预约人模块" ],
        "summary" : "编辑被预约人账号状态",
        "description" : "",
        "operationId" : "updateStatus",
        "produces" : [ "application/json;charset=UTF-8" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "body",
          "required" : false,
          "schema" : {
            "$ref" : "#/definitions/ReservedUserUpdateStausReqDto"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ResponseDto"
            }
          }
        }
      }
    }
  },
  "definitions" : {
    "BufferedReader" : {
      "type" : "object"
    },
    "Cookie" : {
      "type" : "object",
      "properties" : {
        "name" : {
          "type" : "string"
        },
        "value" : {
          "type" : "string"
        },
        "comment" : {
          "type" : "string"
        },
        "domain" : {
          "type" : "string"
        },
        "maxAge" : {
          "type" : "integer",
          "format" : "int32"
        },
        "path" : {
          "type" : "string"
        },
        "secure" : {
          "type" : "boolean",
          "default" : false
        },
        "version" : {
          "type" : "integer",
          "format" : "int32"
        }
      }
    },
    "Enumeration" : {
      "type" : "object"
    },
    "HttpServletRequest" : {
      "type" : "object",
      "properties" : {
        "method" : {
          "type" : "string"
        },
        "userPrincipal" : {
          "$ref" : "#/definitions/Principal"
        },
        "session" : {
          "$ref" : "#/definitions/HttpSession"
        },
        "cookies" : {
          "type" : "array",
          "items" : {
            "$ref" : "#/definitions/Cookie"
          }
        },
        "authType" : {
          "type" : "string"
        },
        "contextPath" : {
          "type" : "string"
        },
        "servletPath" : {
          "type" : "string"
        },
        "remoteUser" : {
          "type" : "string"
        },
        "pathInfo" : {
          "type" : "string"
        },
        "requestURI" : {
          "type" : "string"
        },
        "headerNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "requestURL" : {
          "$ref" : "#/definitions/StringBuffer"
        },
        "queryString" : {
          "type" : "string"
        },
        "requestedSessionId" : {
          "type" : "string"
        },
        "requestedSessionIdFromUrl" : {
          "type" : "boolean",
          "default" : false
        },
        "requestedSessionIdValid" : {
          "type" : "boolean",
          "default" : false
        },
        "pathTranslated" : {
          "type" : "string"
        },
        "requestedSessionIdFromCookie" : {
          "type" : "boolean",
          "default" : false
        },
        "requestedSessionIdFromURL" : {
          "type" : "boolean",
          "default" : false
        },
        "inputStream" : {
          "$ref" : "#/definitions/ServletInputStream"
        },
        "protocol" : {
          "type" : "string"
        },
        "scheme" : {
          "type" : "string"
        },
        "contentLength" : {
          "type" : "integer",
          "format" : "int32"
        },
        "contentType" : {
          "type" : "string"
        },
        "locale" : {
          "$ref" : "#/definitions/Locale"
        },
        "attributeNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "parameterMap" : {
          "type" : "object",
          "additionalProperties" : {
            "type" : "object"
          }
        },
        "localName" : {
          "type" : "string"
        },
        "reader" : {
          "$ref" : "#/definitions/BufferedReader"
        },
        "localPort" : {
          "type" : "integer",
          "format" : "int32"
        },
        "serverPort" : {
          "type" : "integer",
          "format" : "int32"
        },
        "remoteAddr" : {
          "type" : "string"
        },
        "locales" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "localAddr" : {
          "type" : "string"
        },
        "secure" : {
          "type" : "boolean",
          "default" : false
        },
        "remoteHost" : {
          "type" : "string"
        },
        "remotePort" : {
          "type" : "integer",
          "format" : "int32"
        },
        "serverName" : {
          "type" : "string"
        },
        "parameterNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "characterEncoding" : {
          "type" : "string"
        }
      }
    },
    "HttpServletResponse" : {
      "type" : "object",
      "properties" : {
        "locale" : {
          "$ref" : "#/definitions/Locale"
        },
        "contentType" : {
          "type" : "string"
        },
        "outputStream" : {
          "$ref" : "#/definitions/ServletOutputStream"
        },
        "writer" : {
          "$ref" : "#/definitions/PrintWriter"
        },
        "bufferSize" : {
          "type" : "integer",
          "format" : "int32"
        },
        "committed" : {
          "type" : "boolean",
          "default" : false
        },
        "characterEncoding" : {
          "type" : "string"
        }
      }
    },
    "HttpSession" : {
      "type" : "object",
      "properties" : {
        "id" : {
          "type" : "string"
        },
        "creationTime" : {
          "type" : "integer",
          "format" : "int64"
        },
        "attributeNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "new" : {
          "type" : "boolean",
          "default" : false
        },
        "valueNames" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        },
        "lastAccessedTime" : {
          "type" : "integer",
          "format" : "int64"
        },
        "maxInactiveInterval" : {
          "type" : "integer",
          "format" : "int32"
        },
        "servletContext" : {
          "$ref" : "#/definitions/ServletContext"
        },
        "sessionContext" : {
          "$ref" : "#/definitions/HttpSessionContext"
        }
      }
    },
    "HttpSessionContext" : {
      "type" : "object",
      "properties" : {
        "ids" : {
          "$ref" : "#/definitions/Enumeration"
        }
      }
    },
    "ListResponseDto" : {
      "type" : "object",
      "properties" : {
        "status" : {
          "description" : "状态",
          "$ref" : "#/definitions/Status"
        },
        "data" : {
          "type" : "array",
          "description" : "数据",
          "items" : {
            "type" : "object"
          }
        }
      }
    },
    "Locale" : {
      "type" : "object",
      "properties" : {
        "country" : {
          "type" : "string"
        },
        "displayCountry" : {
          "type" : "string"
        },
        "displayLanguage" : {
          "type" : "string"
        },
        "displayName" : {
          "type" : "string"
        },
        "displayScript" : {
          "type" : "string"
        },
        "displayVariant" : {
          "type" : "string"
        },
        "extensionKeys" : {
          "type" : "array",
          "uniqueItems" : true,
          "items" : {
            "type" : "string"
          }
        },
        "iso3Country" : {
          "type" : "string"
        },
        "iso3Language" : {
          "type" : "string"
        },
        "script" : {
          "type" : "string"
        },
        "unicodeLocaleAttributes" : {
          "type" : "array",
          "uniqueItems" : true,
          "items" : {
            "type" : "string"
          }
        },
        "unicodeLocaleKeys" : {
          "type" : "array",
          "uniqueItems" : true,
          "items" : {
            "type" : "string"
          }
        },
        "variant" : {
          "type" : "string"
        },
        "language" : {
          "type" : "string"
        }
      }
    },
    "PagerObject" : {
      "type" : "object",
      "properties" : {
        "currentPage" : {
          "type" : "integer",
          "format" : "int64"
        },
        "total" : {
          "type" : "integer",
          "format" : "int64"
        },
        "perPage" : {
          "type" : "integer",
          "format" : "int64"
        },
        "array" : {
          "type" : "array",
          "items" : {
            "type" : "object"
          }
        },
        "extras" : {
          "type" : "object",
          "additionalProperties" : {
            "type" : "object"
          }
        },
        "offset" : {
          "type" : "integer",
          "format" : "int64"
        },
        "totalPageNo" : {
          "type" : "integer",
          "format" : "int64"
        }
      }
    },
    "PagerResponseDto" : {
      "type" : "object",
      "properties" : {
        "status" : {
          "description" : "状态",
          "$ref" : "#/definitions/Status"
        },
        "data" : {
          "description" : "数据",
          "$ref" : "#/definitions/PagerObject"
        }
      }
    },
    "PasswordVerificationReqDto" : {
      "type" : "object",
      "properties" : {
        "phone" : {
          "type" : "string",
          "description" : "手机号"
        },
        "password" : {
          "type" : "string",
          "description" : "新密码"
        },
        "secondPassword" : {
          "type" : "string",
          "description" : "再次新密码"
        }
      }
    },
    "PhoneVerificationReqDto" : {
      "type" : "object",
      "properties" : {
        "phone" : {
          "type" : "string",
          "description" : "手机号"
        },
        "captcha" : {
          "type" : "string",
          "description" : "验证码"
        }
      }
    },
    "Principal" : {
      "type" : "object",
      "properties" : {
        "name" : {
          "type" : "string"
        }
      }
    },
    "PrintWriter" : {
      "type" : "object"
    },
    "ReservationRecordQueryReqDto" : {
      "type" : "object",
      "properties" : {
        "page" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "count" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "condition" : {
          "type" : "string",
          "description" : "预约人/被预约人姓名"
        },
        "status" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "预约状态;0:待接受,1:接受,2:拒绝"
        }
      }
    },
    "ReservationRecordUpdateReqDto" : {
      "type" : "object",
      "properties" : {
        "recordId" : {
          "type" : "string"
        },
        "status" : {
          "type" : "integer",
          "format" : "int32"
        }
      }
    },
    "ReservationUserQueryReqDto" : {
      "type" : "object",
      "properties" : {
        "page" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "count" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "nickname" : {
          "type" : "string",
          "description" : "微信昵称"
        },
        "startTime" : {
          "type" : "string",
          "description" : "注册时间-开始"
        },
        "endTime" : {
          "type" : "string",
          "description" : "注册时间-结束"
        }
      }
    },
    "ReservedLanguagesAddReqDto" : {
      "type" : "object",
      "properties" : {
        "code" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "语种编号"
        },
        "level" : {
          "type" : "string",
          "description" : "语种水平"
        }
      }
    },
    "ReservedUserAddReqDto" : {
      "type" : "object",
      "properties" : {
        "id" : {
          "type" : "string",
          "description" : "id, 更新时 id 不能为空"
        },
        "username" : {
          "type" : "string",
          "description" : "账号"
        },
        "password" : {
          "type" : "string",
          "description" : "密码"
        },
        "name" : {
          "type" : "string",
          "description" : "姓名"
        },
        "phone" : {
          "type" : "string",
          "description" : "手机"
        },
        "position" : {
          "type" : "string",
          "description" : "职位"
        },
        "department" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "所属部门"
        },
        "university" : {
          "type" : "string",
          "description" : "毕业院校"
        },
        "languagesAddReqDtos" : {
          "type" : "array",
          "description" : "语种数组",
          "items" : {
            "$ref" : "#/definitions/ReservedLanguagesAddReqDto"
          }
        }
      }
    },
    "ReservedUserPasswordVerificationReqDto" : {
      "type" : "object",
      "properties" : {
        "reservedUserId" : {
          "type" : "string",
          "description" : "被预约人ID"
        },
        "password" : {
          "type" : "string",
          "description" : "新密码"
        },
        "secondPassword" : {
          "type" : "string",
          "description" : "再次新密码"
        }
      }
    },
    "ReservedUserQueryReqDto" : {
      "type" : "object",
      "properties" : {
        "page" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "count" : {
          "type" : "integer",
          "format" : "int64",
          "minimum" : 1.0
        },
        "condition" : {
          "type" : "string",
          "description" : "账号/姓名/手机号"
        },
        "code" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "语种编号"
        },
        "department" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "所属部门"
        },
        "userStatus" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "是否启用;0:禁用,1:启用"
        }
      }
    },
    "ReservedUserUpdateStausReqDto" : {
      "type" : "object",
      "properties" : {
        "reservedUserId" : {
          "type" : "string",
          "description" : "被预约人ID"
        },
        "userStatus" : {
          "type" : "integer",
          "format" : "int32",
          "description" : "是否启用;0:禁用,1:启用"
        }
      }
    },
    "ResponseDto" : {
      "type" : "object",
      "properties" : {
        "status" : {
          "description" : "状态",
          "$ref" : "#/definitions/Status"
        },
        "data" : {
          "type" : "object",
          "description" : "数据"
        }
      }
    },
    "ServletContext" : {
      "type" : "object",
      "properties" : {
        "attributeNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "majorVersion" : {
          "type" : "integer",
          "format" : "int32"
        },
        "minorVersion" : {
          "type" : "integer",
          "format" : "int32"
        },
        "servletContextName" : {
          "type" : "string"
        },
        "initParameterNames" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "contextPath" : {
          "type" : "string"
        },
        "serverInfo" : {
          "type" : "string"
        },
        "servlets" : {
          "$ref" : "#/definitions/Enumeration"
        },
        "servletNames" : {
          "$ref" : "#/definitions/Enumeration"
        }
      }
    },
    "ServletInputStream" : {
      "type" : "object"
    },
    "ServletOutputStream" : {
      "type" : "object"
    },
    "Status" : {
      "type" : "object",
      "properties" : {
        "errCode" : {
          "type" : "integer",
          "format" : "int32"
        },
        "message" : {
          "type" : "string"
        }
      }
    },
    "StringBuffer" : {
      "type" : "object"
    }
  }
}


你可能感兴趣的:(swagger,spring,mvc)