数据返回结构

  • 格式:docx
  • 大小:47.46 KB
  • 文档页数:9

数据返回结构目的:此文档用于前台手机端与后台系统的数据交互接口的规范。

开发人员应严格遵守接口标准。

文档对象:前台开发人员、后台开发人员返回对象结构ReturnResult对象,其结构包括三个属性:“success”、“message”、“object”。

“success”:本次操作是否成功,成功为true、失败为false。

“message”:本次操作返回结果提示信息,现在内容是中文提示,以后会是返回结果代码。

“object”:本次操作返回的结果集。

如查询的结果列表、新建信息的id等。

以上三个属性会转换成json串的形式。

以用户注册为例,返回结果:{"message":"注册新用户成功","object":{"_id":"4dc74b78752d540fd0f2ee3b"},"success":true} "message"::"注册新用户成功"——本次操作返回结果提示信息,以后可能是结果代码,如:CZCU001 "success":true——本次操作是否成功,成功为true,不成功为false{XXXX对象的json形式}:是指这个对象的属性及其值以json的{key:value}形式给出。

如:{属性1:值1, 属性2:值2,属性3:值3}。

value可以是一个对象,则json就是嵌套结构。

如果某个属性是boolean 类型,名称是isXXXXX,则它的json的为XXXX(去掉前面的is)。

参数格式约定1、时间格式使用字符串形式传输,采用GTD+8(北京时间)计时。

格式:“2011-05-09 12:12:12”。

2、每次请求都要加上当前登录用户的sessionId(除登录后注册之外)。

&user.sessionId=xxxxxxx。

下面这两个不一定会列出来,但是都包含这个请求参数的。

接口方法用户部分1、用户登录er.login输入1:=er.login&user.loginName=xxxx&user.password=xxxxx输入2:=er.login&user.email=xxxx&user.password=xxxxx输出:返回对象结构,其中object:{“sessionId”:”xxxxxx”,”userId”:”xxxxxxx”}例如:{"message":"登录成功","object":{"sessionId":"-86998193500343087504e015fb2a01a05de69e182c7","userId":"4ddb7d7811afb3e7bfc1a69a"},"success":true}或{"message":"用户名或密码不正确","object":null,"success":false}2、用户注册er. enroll输入:=er.enroll&user.loginName=xxxx&user.password=xxxx&user.email= xxxxx&insert.用户表字段…..=xxxxx输出:{"message":"注册新用户成功","object":{"_id":"4dc74b78752d540fd0f2ee3b"},"success":true}3、重置密码er.resetPassword输入:=er.resetPassword&user.loginName=xxxx&user.password=xxxx输出:{"message":"修改密码成功","object":null,"success":true}4、登录名是否被使用er.checkLoginName输入:=er. checkLoginName&user.loginName=xxxx输出:{"message":"此登录名没有被使用","object":null,"success":true}5、查询用户信息er.queryUserInfo输入:=er. queryUserInfo &query.用户表字段…..=xxxx输出:返回对象结构,其中object:{用户表的json字串}6、修改用户基本信息er.modifyUser输入:=er.modifyUser&update.用户表字段…..=xxxx输出:返回对象结构,其中object:{”user”: {User的json}}7、查询用户所在的所有团队er.collectionByUser输入:=er. collectionByUser输出:返回对象结构,其中object:{”userCollection”: {UserCollection列表json}}8、查看用户下所有的业务er.taskByUser查看当前登录用户下的所有业务:输入:=er. taskByUser输出:返回对象结构,其中object:{“task”:{task列表json形式}}查看指定用户下的所有业务:输入:=er. taskByUser&query._id=指定用户id输出:返回对象结构,其中object:{“task”:{task列表json形式}}9、人员关注未看信息数er.followNumByUser输入:=er. followNumByUser&query.author=xxx&stTime=2011-05-18 19:43:00输出:返回对象结构,其中object:数10、获得指定数目的注册用户er.queryEnrollUserInfo输入:=er.queryEnrollUserInfo&query. excludeUserCollectionId =所要排除的团队Id &query.count=所要查找的注册用户数目说明:参数[query. excludeUserCollectionId]为可选项,如果传值,代表获得指定团队以外指定数目的注册用户,未传则认为无指定用户排除参数[query.count]为可选项,如果传值代表获取用户的指定数目,未传后台会默认把此值设定为100输出:返回对象结构,其中object: {“userList”:{user列表json形式}}11、邮箱是否被使用er. checkEmail输入:=er. checkEmail &user. email =xxxx输出:{"message":"已经有用户使用此邮箱","object":null,"success":false}团队部分1、团队查看列表xxxx.collection.queryCollection输入:=xxxx.collection.queryCollection&query.member=xxxx输出:返回对象结构,其中object: {"userCollection", {团队列表的json形式}}2、增加团队xxxx.collection.addCollection输入:=xxxx.collection.addCollection&insert.parentUserCollection=父团队Id&insert.manager=团队管理者Id&insert.member=团队成员Id &insert.task=所要加入的业务Id&insert.团队表其他字段…=xxx说明:当前要传insert.parentUserCollection,此值为标注当前用户在哪个父团队下发起的增加操作,如不传insert .parentUserCollection视为新增的团队独立存在。

insert.parentUserCollection, insert.manager, insert.member, insert.task都是可选的,不传也可以输出:返回对象结构,其中object: {团队的json形式}3、修改团队xxxx.collection.modifyCollection输入:=xxxx.collection.modifyCollection&update.团队表字段…=xx输出:返回对象结构,其中object:{团队的json形式}4、删除团队xxxx.collection.deleteCollection输入:=xxxx.collection. deleteCollection&update._id=团队id输出:返回对象结构,其中object:{“task”:{业务列表json形式}}5、通过团队查业务xxxx.collection.queryTaskByCollection输入:=xxxx.collection.queryTaskByCollection&erCollectionId=团队id输出:返回对象结构,其中object:{“task”:{业务列表json形式}}6、团队下人员xxxx.collection.queryUserByCollection输入:=xxxx.collection.queryUserByCollection&erCollection=团队id&erId=xxx输出:返回对象结构,其中object: {“member”:{User列表json形式}}7、团队下动态信息列表xxxx.collection.queryActivityByCollection输入:=xxxx.collection.queryActivityByCollection&query._id=团队id输出:返回对象结构,其中object: { feed :{ feed列表json}}8、删除团队下人员xxxx.collection.quitCollectionByUser输入:=xxxx.collection.quitCollectionByUser&update._id=团队id&update.member=userId_1& update.member=userId_2输出:返回对象结构9、增加团队人员xxxx.collection.enterCollectionByUser输入:=xxxx.collection.enterCollectionByUser&insert._id=团队id&insert.member=userId&insert.member=userId &insert.password=AN5V输出:返回对象结构,其中object:{团队的json形式}}10、团队关注未看信息数xxxx.collection.followNumByCollection输入:=xxxx.collection.followNumByCollection&query.belongToId=xxxx&query.preTime=2011-05-17 12:38:22&erId=xxxx输出:返回对象结构,其中object:{“count”:count}11、获得指定团队xxxx.collection.getUserCollectionById输入:= xxxx.collection.getUserCollectionById&query._id=xxx输出:返回对象结构,其中object:{团队json}12、团队密码重置xxxx.collection.resetUserCollectionPassword输入:= xxxx.collection.resetUserCollectionPassword&erCollectionId=团队的ID输出:返回对象结构,其中object:{password : “AN5V”}13、获取服务器时间xxxx.search.getCurrentServerTime输入:= =xxxx.search.getCurrentServerTime输出:返回对象结构,其中object":{"currentTime":1306986727687}14、获取团队密码xxxx.collection.getUserCollectionPassword输入:= xxxx.collection.getUserCollectionPassword&erCollectionId=团队的ID 输出:返回对象结构,其中object":{"password":"QSNU"}15、根据密码获取团队xxxx.collection.getUserCollectionByPassword输入:=xxxx.collection.getUserCollectionByPassword &query.password=563Y输出:返回对象结构,其中object":{团队json}16、获取团队密码的时间(有效期、还有多久过期)xxxx.collection.getUserCollectionByPassword输入:=xxxx.collection.getUserCollectionPasswordTime&erCollectionId =团队的ID输出:返回对象结构,{"message":"获取团队密码的时间成功","object":{"remainTime":"6489609","periodTime":"7200000"},"success":true}17、获取团队密码的时间(有效期、还有多久过期)xxxx.collection.getUserCollectionByPassword输入:=xxxx.collection.getUserCollectionPasswordTime&query.password=563Y输出:返回对象结构,{"message":"获取团队密码的时间成功","object":{"remainTime":"6489609","periodTime":"7200000"},"success":true}注:返回值中remainTime(获取还有多少时间过期),periodTime(获取时间的有效期)18、复制团队下业务xxxx.collection. copyTaskBySystemUserCollection输入:=xxxx.collection.copyTaskBySystemUserCollection&erCollectionId=要复制业务的团队输出:返回对象结构,{"message":"复制系统团队下业务成功","object":””,"success":true}注:19、获取系统团队xxxx.collection.querySystemUserCollection输入:=xxxx.collection.querySystemUserCollection输出:返回对象结构,其中object:{ UserCollection的json形式}关注1、增加关注xxxx.follow.addFollow输入:=xxxx.follow.addFollow&insert.关注字段…=xxx&erId=xxx输出:返回对象结构2、撤销关注xxxx.follow.cancelFollow输入:=xxxx.follow.cancelFollow&update.belongToId=xxx&erId=xxxx& erId=xxx输出:返回对象结构3、查询关注列表xxxx.follow.queryFollow输入:=xxxx.follow.queryFollow&erId=xxx&erId=xxx输出:返回对象结构,其中object:{“follow”:{所有关注列表json},”task”:{业务关注列表json},”user”:{人员关注列表json},”dept”:{部门关注列表json}}业务1、查看动态(所有)xxxx.task.queryActivity输入:=xxxx.task.queryActivity&page.perPageSize=xxx&page.nextTime=xxx&page.preTime=xx&page.total=xxx输出:返回对象结构,其中object:{"nextData":{DynamicInfo列表的json形式},”preDate”:{DynamicInfo列表的json形式},”pageInfo”:{PageInfo的json形式}}1a、查看动态(业务)xxxx.task.queryActivity输入:=xxxx.task.queryActivity&query.taskId=xxxxxxxxxxxxx&page.perPageSize=xxx&page.nextTime=xxx&page.preTime=xx&page.total=xxx输出:返回对象结构,其中object:{"nextData":{DynamicInfo列表的json形式},”preDate”:{DynamicInfo列表的json形式},”pageInfo”:{PageInfo的json形式}}1b、查看动态(人员)xxxx.task.queryActivity输入:=xxxx.task.queryActivity&query.author=xxxxxxxxxxxxx&page.perPageSize=xxx&page.nextTime=xxx&page.preTime=xx&page.total=xxx输出:返回对象结构,其中object:{"nextData":{DynamicInfo列表的json形式},”preDate”:{DynamicInfo列表的json形式},”pageInfo”:{PageInfo的json形式}}1b、查看动态(团队)xxxx.task.queryActivity输入:=xxxx.task.queryActivity&query. collectionId=xxxxxxxxxxxxx&page.perPageSize=xxx&page.nextTime=xxx&page.preTime=xx&page.total=xxx输出:返回对象结构,其中object:[{“taskId”:xxxx, “taskName”:xxxx, “data”:{"nextData":{DynamicInfo列表的json形式},”preDate”:{DynamicInfo列表的json形式},”pageInfo”:{PageInfo的json形式}}}}2、发布动态xxxx.task.addActivity输入:=xxxx.task.addActivity&insert.taskId=xxx&insert.动态表字段….=xxx输出:{"message":"提示信息","success":"操作状态","object":{"_id":"新动态id"}3、增加业务xxxx.task.addTask输入:=xxxx.task.addTask&erCollectionId=团队id&insert.业务表字段…=xxx 说明:insert.taskFormId值为taskForm的json形式;insert.taskTemplateId值为taskTemplate的json 形式。