View on GitHub

招财喵

The documents about Software Analysis & Design Team Work

API 设计

通用格式

本项目采用微信提供的云开发代替服务端,云函数作为服务端API,接受的参数以参数名-值的形式作为wx.cloud.callFunction 参数data对象的属性,如:

wx.cloud.callFunction({
    name: cloud_func_name,
    data:{
        param1: xxx,
        param2: xxx,
        ...
    }
})
{
    success: bool
    error: object
    other_data: ... 
}

下面为了节省版面,只写云函数名称和data对象的属性

用户登入

login

功能:程序登入调用函数,如果用户为新用户则进入注册页面,否则返回用户所有数据,发生内部错误调用失败
接受参数:
无

返回情况:
{
    success: bool 是否调用成功
    isNew: bool 是否为新用户
    type: num 用户类型
    info: object 用户所有信息(学生:学号、姓名、年级、专业;机构:机构名)
    openid: string
    error:系统内部错误
}
send_verification

功能:发送验证码到认证邮箱,服务端不判断是否合法
传入参数:
receiver:string 认证邮箱

返回情况:
{
    success: bool
    error: object 系统内部错误
}
recv_verification

功能:接收并验证用户输入的验证码
接受参数:
code: num 用户输入验证码

返回情况:
{
    success: bool
    error: string/object  系统内部错误/worng code验证码不正确/code out of date验证码已过期(5分钟时效)
}
add_info

功能:添加用户基本信息
接受参数:
user_type: num 表示用户类型
user_info: object  用户或组织的所有信息

返回情况:
{
    success: bool
    error: object  系统内部错误
}
update_info

功能:修改用户基本信息
接受参数:
user_type: num 表示用户类型
user_info: object  用户或组织更新后的所有信息

返回情况:
{
    success: bool
    error: object  (假定前端传来的字段都是有效的)系统内部错误
}

问卷模块

release_questionnaire

功能:发布问卷
接受参数: 
name: string 问卷名
publish_time: string 问卷的发布时间
deadline: string 问卷的截止时间
reward: string 报酬
position: string 地点
total_amount: number 问卷发布的总份数
content: string 问卷内容(JSON转string)
description: string 对问卷的简要描述

返回情况:
{
    success: bool 表示是否正确执行
    error: object 如果失败会返回错误描述
}
fill_in_questionnaire

功能:填写问卷
接受参数:
qid: string 所填写的问卷id
content: string 填写的内容(JSON转string)

返回情况:
{
    success: bool 表示是否正确执行
    error: object 如果失败会返回错误描述
}
get_all_questionnaire

功能:获取所有问卷
接受参数:
无

返回情况:
{
    success: bool 表示是否正确执行
    value: array 问卷信息数组
    error: object 错误描述
}
get_answer

功能:获取问卷结果(问卷名_问卷ID.xlsx格式)
接受参数:
qid: 问卷id

返回情况:
{
    success: bool 表示是否正确执行
    fileID: 在云端存储的文件ID
    error: object 错误描述
}
get_questionnaire_detail

功能:获取某个问卷的详情
接受参数:
qid: 问卷的id

返回情况:
{
    success: bool 表示是否正确执行
    value: object 问卷详情
    error: object 错误描述
}
get_user_questionnaire

功能:获取与当前用户相关的问卷
接受参数:
self_publish: bool 该用户发布的问卷
self_fill_in: bool 该用户填写过的问卷

返回情况:
{
    success: bool 表示是否正确执行
    value: array 问卷信息数组
    error: object 错误描述
}

问题模块

ask_question

功能:提问
接受参数:
time: string 提问时间
title: string 问题标题
content: string 问题内容

返回情况:
{
    success: bool 表示是否正确执行
    error: object 如果失败会返回错误描述
}
get_question

功能:获取提问
接受参数:
无

返回情况:
{
    success: bool 表示是否正确执行
    value: array 问题的数组
    error: object 如果失败会返回错误描述
}
get_reply

功能:获取某个提问的回答
接受参数:
qid: string 问题的id

返回情况:
{
    success: bool 表示是否正确执行
    value: array 回答的数组
    error: object 如果失败会返回错误描述
}
get_user_question

功能:获取与当前用户相关的问答
接受参数:
self_ask: bool 该用户发布的问答
self_answer: bool 该用户填写过的问答

返回情况:
{
    success: bool 表示是否正确执行
    value: array 问答信息数组
    error: object 错误描述
}
reply_question

功能:回答问题
接受参数:
qid: string 问题id
time: string 回答的时间
content: string 回答内容

返回情况:
{
    success: bool 表示是否正确执行
    error: object 如果失败会返回错误描述
}
update_like

功能:点赞/取消点赞
接受参数:
rid: string 回复id

返回情况:
{
    success: bool 表示是否正确执行
    error: object 如果失败会返回错误描述
}