# 服务平台 版本 | 创建时间 | 作者 | 备注信息 ---|---|---|--- v1.0|2022-01-20|zxfei| 接口文档 ## 数据类型 类型名称|类型描述|参考样例 ---|---|--- String |字符串|A、a、ab Integer|数字类型|1、12、-1 Long|长整型数字|1、12、-1 date|时间类型,单位纳秒数字|167988745573 BigDecimal|小数类型|545.256 object|对象类型|{"name":"zhang3"} arrays|数组类型|[{"name":"zhang3"},{"name":"zhang2"}] <#if (tableList?size > 1) > ## 系统服务 ### 登录 **请求URL:** login/login **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 用户登录 **请求参数:** 参数名称|类型|备注|必填|其它 ---|---|---|---|--- loginName|String|用户名称|是|- password|String|用户密码|是|- securityCode|String|校验码|是|- **请求样例:** ``` { "loginName":"zhang3", "password":"123456", "securityCode":"5455" } ``` **响应参数:** 参数名称 |参数类型|备注|其它 ---|---|---|--- code|Integer|结果码(-1.失败,1.成功)|- msg|String|消息|- **响应消息样例:** ``` { "msg":"登录成功", "code":1, "data":{ } } ``` ### 登出 **请求URL:** login/logout **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 用户退出注销 **请求参数:** 参数名称|类型|备注|必填|其它 ---|---|---|---|--- **请求样例:** ``` ``` **响应参数:** 参数名称 |参数类型|备注|其它 ---|---|---|--- code|Integer|结果码(-1.失败,1.成功)|- msg|String|消息|- **响应消息样例:** ``` ``` ### 修改密码 **请求URL:** user/change/password **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 用户修改密码 **请求参数:** 参数名称|类型|备注|必填|其它 ---|---|---|---|--- loginName|String|用户名称|是|- oldPwd|String|用户加密后密码|是|- newPwd|String|用户加密后新密码|是|- **请求样例:** ``` { "loginName":"zhang3", "oldPwd":"123456", "newPwd":"5455" } ``` **响应参数:** 参数名称 |参数类型|备注|其它 ---|---|---|--- code|Integer|结果码(-1.失败,1.成功)|- msg|String|消息|- **响应消息样例:** ``` { "msg":"修改密码成功", "code":1, "data":{} } ``` ### 获取验证码 **请求URL:** securitycode/createCode **请求方式:** GET **内容类型:** image/gif **简要描述:** 用户退出注销 **请求参数:** 参数名称|类型|备注|必填|其它 ---|---|---|---|--- **请求样例:** ``` ``` **响应参数:** **响应消息样例:** ``` ``` ### 上传附件 **请求URL:** file/commonupload **请求方式:** POST **内容类型:** multipart/form-data **简要描述:** 用户上传附件 **请求参数:** 参数名称|类型|备注|必填|其它 ---|---|---|---|--- file|multipart|附件|是|- prePath|String|附件存放相对路径|否|不填时候默认为/file/fileupload **请求样例:** ``` http://127.0.0.1/file/commonupload?prePath=/file/fileupload Content-Type: multipart/form-data; boundary=WebAppBoundary --WebAppBoundary Content-Disposition: form-data; name="file"; filename="1.excel" Content-Type: multipart/form-data ``` **响应参数:** **响应消息样例:** ``` ``` </#if> <#list tableList as table> ## ${table.functionName} ### 查询${table.functionName}列表 **请求URL:** ${table.path}/${table.requestMapping}/list **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 查询${table.functionName} **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------ page|Integer|否|当前页 size|Integer|否|每页条数,值为-1,查询所有记录 <#list table.columns as column> <#if column.isQuery == 1> <#if column.javaType=="String" > ${column.javaField}|${column.javaType}|否|${column.columnComment},字段前后添加%%模糊查询 <#else> ${column.javaField}|${column.javaType}|否|${column.columnComment} </#if> </#if> </#list> **请求样例:** ``` { <#list table.columns as column> <#if column.isQuery == 1> <#if column.javaType=="String" ||column.javaType=="Date"> <#assign fakeValue>"${column.randomStr(column.javaType)}"</#assign> <#else> <#assign fakeValue>${column.randomStr(column.javaType)}</#assign> </#if> "${column.javaField}":${fakeValue}<#sep>,</#sep> </#if> </#list> "page":1, "size":10 } ``` **响应参数:** 参数名称|参数类型|描述 :---|:---|:------ code|Integer|结果码(-1.失败,1.成功) msg|String|消息 data|object|数据对象  per_page|Integer|每页条数  total|Integer|总条数  last_page|Integer|总页数  current_page|Integer|当前页  data|array|结果集列表|数组 <#list table.columns as column>   ${column.javaField}|${column.javaType}|${column.columnComment} </#list> dict|object|字典对象 <#list table.columns as column> <#if column.dict??&&(column.columnType?contains("tinyint") ||column.htmlType==3||column.htmlType==5)>  ${column.javaField}|object|字典属性对象,详见附录 </#if> </#list> **响应消息样例:** ``` { "code":1, "data":{ } } ``` ### 查看${table.functionName} **请求URL:** ${table.path}/${table.requestMapping}/info **请求方式:** GET **内容类型:** application/json;charset=utf-8 **简要描述:** 查看${table.functionName},返回实例详细信息 **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------ ${table.pkColumn.javaField}|${table.pkColumn.javaType}|是|ID **请求样例:** ``` http://localhost/${table.path}/${table.requestMapping}/info?id=549 ``` **响应参数:** 参数名称 |参数类型|描述 :---|:---|:------- code|Integer|结果码(-1.失败,1.成功) msg|String|消息 data|object|数据对象 <#list table.columns as column>  ${column.javaField}|${column.javaType}|${column.columnComment} </#list> dict|object|字典对象 <#list table.columns as column> <#if column.dict??&&(column.columnType?contains("tinyint") ||column.htmlType==3||column.htmlType==5)>  ${column.javaField}|object|字典属性对象,详见附录 </#if> </#list> **响应消息样例:** ``` { "code": 1, "data": { <#list table.columns as column> <#if column.javaType=="String" ||column.javaType=="Date"> <#assign fakeValue>"${column.randomStr(column.javaType)}"</#assign> <#else> <#assign fakeValue>${column.randomStr(column.javaType)}</#assign> </#if> "${column.javaField}":${fakeValue}<#sep>,</#sep> </#list> } } ``` ### 保存更新${table.functionName} **请求URL:** ${table.path}/${table.requestMapping}/save **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 保存或更新${table.functionName}:id为空时为新增保存,否则为更新提交 **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------- <#list table.columns as column> <#if !column.isSuperColumn(column.javaField)> <#if column.isRequired == 1> ${column.javaField}|${column.javaType}|是|${column.columnComment} <#else> ${column.javaField}|${column.javaType}|否|${column.columnComment} </#if> </#if> </#list> **请求样例:** ``` { <#list table.columns as column> <#if !column.isSuperColumn(column.javaField)> <#if column.javaType=="String" ||column.javaType=="Date"> <#assign fakeValue>"${column.randomStr(column.javaType)}"</#assign> <#else> <#assign fakeValue>${column.randomStr(column.javaType)}</#assign> </#if> "${column.javaField}":${fakeValue}<#sep>,</#sep> </#if> </#list> } ``` **响应参数:** 参数名称 |参数类型|描述 :---|:---|:------ code|Integer|结果码(-1.失败,1.成功) msg|String|消息 data|object|数据对象  id|Long|保存后主键id  entity|object|保存更新实体 <#list table.columns as column>   ${column.javaField}|${column.javaType}|${column.columnComment} </#list> **响应消息样例:** ``` { "msg":"新增模块成功", "code":1, "data":{} } } ``` ### 删除${table.functionName} **请求URL:** ${table.path}/${table.requestMapping}/delete **请求方式:** GET **内容类型:** application/json;charset=utf-8 **简要描述:** 删除${table.functionName} **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------ ${table.pkColumn.javaField}|String|是|数组 **请求样例:** ``` http://localhost:8080/${table.path}/${table.requestMapping}/delete?id=1&id=2' ``` **响应参数:** 参数名称 |参数类型|备注|其它 ---|---|---|--- code|Integer|结果码(-1.失败,1.成功)|- msg|String|消息|- **响应消息样例:** ``` { "code":1, "msg":"成功" } ``` <#if table.isGenExport==1 > ### 导入${table.functionName}模板下载 **请求URL:** ${table.path}/${table.requestMapping}/downloadTemplate **请求方式:** POST **内容类型:** application/octet-stream;charset=utf-8 **简要描述:** ${table.functionName}导入模板下载 **请求样例:** ``` http://localhost/${table.path}/${table.requestMapping}/downloadTemplate ``` **Response-example:** ``` ... ``` ### 导入${table.functionName} **请求URL:** ${table.path}/${table.requestMapping}/importData **请求方式:** POST **内容类型:** multipart/form-data **简要描述:** 导入${table.functionName} **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------ file|file|是|文件流 **请求样例:** ``` http://localhost/${table.path}/${table.requestMapping}/importData --data 'updateSupport=true' ``` **Response-example:** ``` ... ``` ### 导出${table.functionName} **请求URL:** ${table.path}/${table.requestMapping}/exportExcel **请求方式:** POST **内容类型:** application/json;charset=utf-8 **简要描述:** 导出${table.functionName} **请求参数:** 参数名称|类型|必填|描述 :---|:---|:---|:------ idList|Arrays|否|id数组 <#list table.columns as column> <#if column.isQuery == 1> ${column.javaField}|${column.javaType}|${column.columnComment}|否|参数查询条件 </#if> </#list> **请求样例:** ``` { idList:[1,2], <#list table.columns as column> <#if column.isQuery == 1> <#if column.javaType=="String" ||column.javaType=="Date"> <#assign fakeValue>"${column.randomStr(column.javaType)}"</#assign> <#else> <#assign fakeValue>${column.randomStr(column.javaType)}</#assign> </#if> "${column.javaField}":${fakeValue}<#sep>,</#sep> </#if> </#list> } ``` **Response-example:** ``` ... ``` </#if> </#list> ## 字典附录 <#list tableList as table> <#list table.columns as column> <#if column.dict??> <#assign comment=column.subComment(column.columnComment) /> ### ${column.javaField} 字典参数key|字典参数值|其它 :---|:---|:--- <#list column.dict as dict> ${dict.num}|${dict.value}|- </#list> </#if> </#list> </#list>