🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 创建任务 ~~~[api] post:/task/create <<< 请求内容 { "project_id": 1000, // 项目ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "pre_task_id": 3 // 前置任务 0表示无前置任务 } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 创建时间 "info": "张三创建了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 任务详情 ~~~[api] post:/task/detail <<< 请求内容 { "id": 1000 // 任务ID } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 编辑任务 ~~~[api] post:/task/update <<< 请求内容 { "id": 1000, // 任务ID "project_id": 1000, // 项目ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "pre_task_id": 0 // 前置任务 仅当任务状态为不可用或待分配时可修改 } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 分配任务 ~~~[api] post:/task/dispatch <<< 请求内容 { "id": 1000, // 任务ID "user_id": 1 // 用户ID } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 评估任务 ~~~[api] post:/task/expect <<< 请求内容 { "id": 1000, // 任务ID "expected_hour": 1 // 预估工时 } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 提交任务 ~~~[api] post:/task/submit <<< 请求内容 { "id": 1000, // 任务ID "used_hour": 1 // 完成工时 } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 审核任务 ~~~[api] post:/task/review <<< 请求内容 { "id": 1000, // 任务ID "review": 1 // 审核 0-未通过,1-通过 } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 转交任务 ~~~[api] post:/task/transfer <<< 请求内容 { "id": 1000, // 任务ID "user_id": 1 //用户ID } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md) ## 关闭任务 ~~~[api] post:/task/close <<< 请求内容 { "id": 1000 // 任务ID } <<< 返回结果 { "code": 0, "info": "success", "data": { "id": 1000, // 任务ID "name": "登录页", // 任务名称 "info": "完成登录页面", // 任务描述 "priority": 1, // 优先级 "state": 1, // 状态 "expected_hour": 2, // 预估工时 "used_hour": 3, // 完成工时 "create_time": "2018-05-20 12:20:22", // 创建时间 "complete_time": null, // 完成时间 "project": // 所属项目 { "id": 1001, // 项目ID "name": "任务系统" // 项目名称 }, "pre_task": // 前置任务 { "id": 1001, // 任务ID "name": "路由配置" // 任务名称 }, "creator": // 创建人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "executor": // 执行人 { "id": 1001, // 用户ID "name": "张三" // 用户名称 }, "logs": [ // 任务日志 { "create_time": "2018-05-20 12:20:22", // 记录时间 "info": "张三创建了任务" // 日志描述 }, { "create_time": "2018-05-20 12:22:22", // 记录时间 "info": "张三编辑了任务" // 日志描述 } ] } } ~~~ 错误参见[错误码说明](错误码说明.md)