12 - AsphaltChen/test12344 GitHub Wiki
-
用于候选人业务的持久化服务
-
后台服务,内部调用
-
候选人信息表
- 表名:candidate
- 字段
序号 字段 数据类型 约束条件 说明 1 id integer 自增主键 候选人 ID 2 name varchar(128) 非空 姓名 3 gender byte 非空 性别 4 resume varchar(512) 非空 简介 5 votes integer 默认 0 得票数 6 avatar varchar(256) 头像 7 rank integer 得票排名 8 createdAt time 非空 信息建立时间 9 updatedAt time 信息更新时间 -
选民信息表
- 表名:voter
- 字段
序号 字段 数据类型 约束条件 说明 1 id integer 自增主键 选民 ID 2 mail varchar(128) 非空 邮箱 3 password varchar(128) 非空 密码 4 salt integer 非空 密码保护随机数 5 state byte 非空,默认 0 有效 选民状态,0:有效,其他:失效原因 6 createdAt time 非空 信息建立时间 7 updatedAt time 信息更新时间
- 增加候选人
/candidate
POST
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| name | string | 是 | 姓名 |
| gender | tring | 是 | 性别 |
| resume | string | 是 | 简历 |
| avatar | string | 否 | 头像链接 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| id | integer | 候选人 id,失败时无 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 删除候选人
/candidate
DELETE
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | integer | 是 | 候选人 id |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 修改候选人信息
/candidate
UPDATE
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | integer | 是 | 候选人 id |
| name | string | 否 | 姓名 |
| gender | tring | 否 | 性别 |
| resume | string | 否 | 简历 |
| avatar | string | 否 | 头像链接 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 查找候选人
/candidate
GET
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | integer | 是 | 候选人 id |
| 名称 | 类型 | 描述 |
|---|---|---|
| id | integer | 候选人 id |
| name | string | 姓名 |
| gender | tring | 性别 |
| resume | string | 简历 |
| avatar | string | 头像链接 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 获取全部候选人
/candidate/all
GET
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| page | integer | 是 | 页码(不分页:-1) |
| count | integer | 是 | 页面数量 |
| 名称 | 类型 | 描述 |
|---|---|---|
| candidates | array | 候选人列表 |
candidate 对象:
| 名称 | 类型 | 描述 |
|---|---|---|
| id | integer | 候选人 id |
| name | string | 姓名 |
| gender | tring | 性别 |
| resume | string | 简历 |
| avatar | string | 头像链接 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 选民注册
/voter
POST
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| string | 是 | 邮箱 | |
| password | string | 是 | 密码 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| id | integer | 选民 id,失败时无 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 选民修改密码
/voter
UPDATE
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | string | 是 | 选民 id |
| password | string | 是 | 新密码 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 选民密码校验
/voter
POST
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | string | 是 | 选民 id |
| password | string | 是 | 密码 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 选民状态修改
/voter
UPDATE
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| id | string | 是 | 选民 id |
| state | int | 是 | 选民状态,0:有效,其他:失效原因 |
| 名称 | 类型 | 描述 |
|---|---|---|
| reesult | integer | 结果,0:成功,其他:失败 |
- 获取全部选民
/voter/all
GET
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| page | integer | 是 | 页码(不分页:-1) |
| count | integer | 是 | 页面数量 |
| 名称 | 类型 | 描述 |
|---|---|---|
| candidates | array | 选民列表 |
voter 对象:
| 名称 | 类型 | 描述 |
|---|---|---|
| id | integer | 选民 id |
| string | 邮箱 | |
| state | tring | 状态 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
-
用于候选人业务缓存服务
-
后台服务,内部调用
-
K-V:
admin [工作人员 password MD5]
-
list
vote:now 选举候选人得票数权重列表
-
hash
voter
[mail] 所投候选人ID列表voting
start 开始时间 end 结束时间 state true(投票进行中)/false(未开始或已结束)
- 校验工作人员身份
/admin
POST
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| username | string | 是 | 管理员 |
| password | string | 是 | 密码 |
| 名称 | 类型 | 描述 |
|---|---|---|
| result | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 获取投票结果
/votes
GET
无
| 名称 | 类型 | 描述 |
|---|---|---|
| result | Array | 结果,0:成功,其他:失败 |
vote 类型
| 名称 | 类型 | 描述 |
|---|---|---|
| name | string | 候选人 |
| vote | integer | 票数 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 投票活动状态
/vote/state
POST
无
| 名称 | 类型 | 描述 |
|---|---|---|
| result | Array | 结果,0:成功,其他:失败 |
vote 类型
| 名称 | 类型 | 描述 |
|---|---|---|
| name | string | 候选人 |
| vote | integer | 票数 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|
- 选民投票
/vote
POST
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| votes | Array | 是 | 选票 |
vote 定义
| 名称 | 类型 | 是否必须 | 描述 |
|---|---|---|---|
| username | string | 是 | 候选人 |
| password | string | 是 | 密码 |
| 名称 | 类型 | 描述 |
|---|---|---|
| result | integer | 结果,0:成功,其他:失败 |
| http 状态码(Status Code) | 错误码(Error Code) | 错误信息(Error Message) | 描述(Description) |
|---|