feat: user & article: dev complete

This commit is contained in:
fallen-angle
2022-02-27 16:36:33 +08:00
parent 4f3b16ab9d
commit 80ca1cd46e
33 changed files with 2373 additions and 185 deletions

View File

@@ -38,6 +38,42 @@ definitions:
wzz:
type: integer
type: object
models.BackArticle:
properties:
content:
description: 文章内容(如有需要可迁移至对象存储)
type: string
cover:
description: 文章封面
type: string
createTime:
description: 文章新建时间
type: string
createUser:
description: 文章创建者id
type: string
isDelete:
description: 删除标志
type: integer
isPublish:
description: '发布状态(0:未发布, 1: 发布)'
type: integer
modifyTime:
description: 文章最后更新时间
type: string
modifyUser:
description: 文章最后更新者id
type: string
resume:
description: 文章简述
type: string
tags:
description: 文章Tag
type: string
title:
description: 文章标题
type: string
type: object
models.ChinaAdd:
properties:
confirm:
@@ -101,7 +137,43 @@ definitions:
suspect:
type: integer
type: object
models.GinResponse:
models.UserApprove:
properties:
email:
type: string
pass:
type: boolean
type: object
models.UserChangePwd:
properties:
code:
type: string
email:
type: string
newPassword:
type: string
type: object
models.UserLogin:
properties:
account:
type: string
password:
type: string
type: object
models.UserRegister:
properties:
aptitude:
type: string
email:
type: string
password:
type: string
phone:
type: string
username:
type: string
type: object
utils.GinResponse:
properties:
code:
type: integer
@@ -113,6 +185,143 @@ info:
title: nCov Tracker
version: "1.0"
paths:
/article:
post:
consumes:
- application/json
parameters:
- description: article
in: body
name: Article
required: true
schema:
$ref: '#/definitions/models.BackArticle'
- description: token
in: header
name: Token
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
$ref: '#/definitions/models.BackArticle'
type: object
summary: save article
tags:
- Article
/article/{id}:
delete:
consumes:
- application/json
parameters:
- description: token
in: header
name: Token
required: true
type: string
- description: id
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: delete an article
tags:
- Article
get:
consumes:
- application/json
description: Admin can get not published article
parameters:
- description: token
in: header
name: Token
type: string
- description: id
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
$ref: '#/definitions/models.BackArticle'
type: object
summary: get all articles
tags:
- Article
/article/{id}/publish:
post:
consumes:
- application/json
parameters:
- description: token
in: header
name: Token
required: true
type: string
- description: id
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: get all articles
tags:
- Article
/article/list:
get:
consumes:
- application/json
description: Admin can get not published article
parameters:
- description: token
in: header
name: Token
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
items:
$ref: '#/definitions/models.BackArticle'
type: array
type: object
summary: get all articles
tags:
- Article
/statistics/china:
get:
produces:
@@ -122,7 +331,7 @@ paths:
description: OK
schema:
allOf:
- $ref: '#/definitions/models.GinResponse'
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
$ref: '#/definitions/models.ChinaData'
@@ -149,7 +358,7 @@ paths:
description: OK
schema:
allOf:
- $ref: '#/definitions/models.GinResponse'
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
items:
@@ -168,7 +377,7 @@ paths:
description: OK
schema:
allOf:
- $ref: '#/definitions/models.GinResponse'
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
items:
@@ -187,7 +396,7 @@ paths:
description: OK
schema:
allOf:
- $ref: '#/definitions/models.GinResponse'
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
items:
@@ -216,7 +425,7 @@ paths:
description: OK
schema:
allOf:
- $ref: '#/definitions/models.GinResponse'
- $ref: '#/definitions/utils.GinResponse'
- properties:
data:
items:
@@ -226,4 +435,152 @@ paths:
summary: province statistics
tags:
- Statistics
/user/{code}:
get:
parameters:
- description: email
in: path
name: email
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: send verify code
tags:
- User
/user/approve:
post:
consumes:
- application/json
parameters:
- description: token
in: header
name: Token
required: true
type: string
- description: json
in: body
name: json
required: true
schema:
$ref: '#/definitions/models.UserApprove'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: admin approve account, user can use account after approved
tags:
- User
/user/chpwd:
post:
consumes:
- application/json
parameters:
- description: json
in: body
name: json
required: true
schema:
$ref: '#/definitions/models.UserChangePwd'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: change user's password
tags:
- User
/user/code/{email}/{code}:
get:
parameters:
- description: email
in: path
name: email
required: true
type: string
- description: code
in: path
name: code
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: send verify code
tags:
- User
/user/login:
post:
consumes:
- application/json
parameters:
- description: json
in: body
name: json
required: true
schema:
$ref: '#/definitions/models.UserLogin'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: user login
tags:
- User
/user/register:
post:
consumes:
- application/json
parameters:
- description: json
in: body
name: json
required: true
schema:
$ref: '#/definitions/models.UserRegister'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: user register account
tags:
- User
/user/registers:
get:
parameters:
- description: token
in: header
name: Token
required: true
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/utils.GinResponse'
summary: list register infos, which is to be approved
tags:
- User
swagger: "2.0"