# documents **Repository Path**: misterliang/documents ## Basic Information - **Project Name**: documents - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-01-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 流程: 1. 进入小程序界面 ,进行第2步。 2. 调用checkSessioln(),登录态如果未失效,则平安无事,存储的key可以用来待会用户信息验证(接口2.3),数据的解密(接口2.4);如果失效,重新获取code进行第3 步 3. 前端获取code,有效期五分钟内送至后端(接口2.1)。 后端拿code从[weixin Api](https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code)获取用户opendid 和 sessionkey这两个作为值, 然后生成一个随机值作为键(key) 存储起来,将键(key)返给前端存储在storge, 还返回 该用户是否已绑定的结果。进行第4步。 4. 若没有绑定,则提示绑定。将用户号,密码,键(key) 发送至后端绑定接口(1.1),绑定成功返回用户信息。若果已经绑定,进行正常的功能查询。 ## 查询功能 1. 电费 2. 保修 3. 图书馆 4. 失物招领 5. 成绩查询 6. 没课约 ## 0 规范改动 ### 0.1 改动1:请求参数 |参数名|是否必须|传值|说明| |---|:--:|--| |params|是|string|将所有参数的值按接口文档要求的顺序,以'&'为中间连接符,开头结尾不加连接符(接口只有一个参数就不需用'&'连接符),组成一个字符串(设为a),以base64方式将其(a)编码(设为baseCode),然后生成10位随机字符串(数字和字母组成。设为randString,对于每次请求,每次添加的随机值都要不一样),randString在前 baseCode在后 直接相连为一个字符串传给后端.如果后端没有要求传参,则传params=getRandomString(10) + base64_encode(另一个10位随机字符串) #### 以接口1.1为例: | 传键 | 传值 | | ------ | ---------------------------------------- | | params | getRandomString(10) + base64_encode( ¥user + "&" + ¥password + "&" + ¥key ); | #### 以2.1接口为例: | 传键 | 传值 | | ------ | ---------------------------------------- | | params | getRandomString(10) + base64_encode( ¥code ) | ### 0.2 改动2:返回数据 对前端其实最重要的还是取前3个字段。 ``` { "status_code": 200, //就是之前的status "status_text": "bind success", //就是之前的info "bags": { //就是之前的data字段 "createTime": 1484905711000, "id": 7, "openid": "547openid", "status": 1, "stuid": "2014211547", "type": 1, "updateTime": 1484908434000 }, "source_from": "weapp", //数据来源 "secure": 0, "request_id": "1.1", "signature":"3f5e1a41e6b44cc5a6f7a557b2c58c5fb1d46825" //校验字符串。json字符串中除去signature字段,后面加上'RedrockWeapp',然后sha1编码 } ``` ## 接口数据格式 ``` { 'status':200, 'info' : '详细信息', 'data' : { "gender": "男", "major": "0401", "college": "", "grade": "2014" } } ``` |状态码|结果|说明 |---|:--| |200|成功| String| |400|失败| |403|失败|params error,参数错误| |404|失败|not found,查找不到对应数据| ## 1. 用户绑定 ### 1.1 新用户发送 账号,密码绑定 > URL: /bind/doBind |参数名|是否必须|传值|说明| |---|:--:|--| |user|是| String|用户的唯一编码(学生为学号,老师有老师的编码) |password| 是 |string | 密码(身份证后6为,或老师的教务在线密码) |key | 是 | string | 后端给的第三方key > 返回数据: ``` { "status": 200, "info": "bind success", "data": { "id": 3, "stuid": "2014211547", "type": 1, "status": 1, "updateTime": 1484484816000, "createTime": 1484476698000, } // 501 的info "check user password fro remote api,Connection refused" 远程接口挂了 } // 403 empty params ->参数错误 // 400 hava bound before -> 已绑定 ``` ### 1.2 取消绑定 >URL: /bind/cancleBind | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ---------- | ---- | | key | 是 | 后端给的第三方key | | > 返回数据: ``` { "status": 200, "info": "cancle success,delete info" } // 200 'cancle success,change info' 成功 // 404 'no session unique id' 在session中没有找到已认证用户的stuid // 401 'user not bound' 用户以前根本就没绑定,不能取消绑定 // 400 'cancle fail,affected 0 row' 更改数据失败 ``` ### (无用)1.3 检查是否绑定,若已绑定返回绑定信息 > URL: /bind/check |参数名|是否必须|传值|说明| |---|:--:|--| |user|是| String|用户的唯一编码(学生为学号,老师有老师的编码) > 返回数据: ``` { "status": 200, "info": "user hava bound", "data": { "id": 3, "stuid": "2014211547", "status": 1, "type": 1, "createTime": 1484476698000, "updateTime": 1484485553000 }, } // 200 user have bound -> 用户确实一绑定 // 401 user not bound ->提示用户之前并未绑定过 // 403 empty params -> 参数没填 ``` ## 2 登录态维护 ### 2.1 由code获取后端创建的第三方sessionkey和是否绑定 >URL: /auth/codeAuth | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | ---------------- | | code | 是 | string | 由login()获取的code值 | > 返回数据: ``` { "data": { "thirdSession": "3OkImwAkztTiktDWe82bdnt9SA5Y49GX1QjOGISqDYsW6Rwz4sokk7bGETJZooj8", //需要存储 "stuid": "2014211547" //若已经绑定就返回stuid,否则值为"empty" }, "status": 200, "info": "success" } ``` ### 2.2 由后端给的session获取openid,还作为检查是否绑定的接口 >URL: /auth/getOpenid | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | -------- | | key | 是 | string | 接口2.1的返回 | > 返回数据: ``` { "status": 200, "info": "success" "data": { "openid" : "asdasdf", "stuid": "87667" //如果这个用户已经绑定,会有这项数据,否则值为"empty" } } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 ``` ### 2.3 用户数据的签名验证 https://mp.weixin.qq.com/debug/wxadoc/dev/api/signature.html >URL: /auth/checkInfo | 参数名 | 是否必须 | 传值 | 说明 | | ------- | ---- | ------ | ---- | | rawData | 是 | string | | |signature|是|string |key|是|string| 接口2.1给的key > 返回数据: ``` { "status": 200, "info": "success" } // 200 数据正确, 其他情况:数据没对上 //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403 参数错误 ``` ### 2.4 用户数据的加解密 https://mp.weixin.qq.com/debug/wxadoc/dev/api/signature.html >URL: /auth/decryptData | 参数名 | 是否必须 | 传值 | 说明 | | ------------- | ---- | ------ | ---- | | encryptedData | 是 | string | | |iv|是|String |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "status": 200, "info": "success" "data": { //和we.getUserInfo接口返回的res.userInfo格式一样 'city' : 'nanyang', 'Nickname':'wang', 'gender':'1' ... } } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 3 查询功能:电费 >URL: /Electric/getInfo |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "elec_end": "2504", "elec_start": "2503", "elec_free": "30", "elec_spend": "1", "elec_cost": [ "0", "00" ], "record_time": "02/12", "elec_month": "02", "building": "26", "room": "205" }, "signature": "4605df97a230f8f5179c34fd6bceea403261b233", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 4 查询功能:报修 ### 4.1 获取所有记录 >URL: /Repair/getInfo |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "count": 1, //提交次数 "verify": [], //待审核 "finish": [], //已完成 "send": [ //以接收 { "wx_bxdd": "重庆邮电大学", "wx_hfmyd": "", "wx_slr": "李开宇", "wx_shr": "李开宇", "wx_bxdh": "18166564004", "wx_bxnr": "请忽略,测试数据", "wx_hfr": "", "wx_cxbmm": "物业管理中心", "wx_wxgm": "", "wx_djh": "cd282eae-90df-49f8-8757-8c814304ae35", "wx_hfjy": "", "xysj": "120分钟以上响应", "wx_sfkhf": "否", "wx_bxr": "蒋天星", "wx_cxr": "", "wx_ysqk": "", "wx_wxztm": "已受理", "wx_bxip": "127.0.0.1", "wx_ysfz": "0", "wx_bt": "报修测试", "wx_fwqyh": "078f8464-6bc0-4274-91f7-a0ab00df27d4", "wx_bxlxh": "0101", "wx_bxlxm": "水龙头", "wx_wxdh": "Y2017011222--32456", "wx_bxrrzm": "1644529 ", "wx_bxsj": "2017-01-13 00:41:13", "wx_fwqym": "住宅区" } ] }, "signature": "a95cfdc98c61d2efa162ae8d617c6d0ebd103aee", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 4.2 获取详情 >URL: /Repair/getDetail |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key |appId|是|String|接口4.1中获取的wx_djh(维修登记号) > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "wx_bxdd": "重庆邮电大学", "wx_hfmyd": "", "wx_slr": "李开宇", "wx_shr": "李开宇", "wx_bxdh": "18166564004", "wx_bxnr": "请忽略,测试数据", "wx_hfr": "", "wx_cxbmm": "物业管理中心", "picUrl": "", "wx_wxgm": "", "wx_djh": "f91dfedb-00b4-4eac-b6fb-f62e801acdeb", "wx_hfjy": "", "xysj": "120分钟以上响应", "wx_sfkhf": "否", "wx_bxr": "蒋天星", "wx_cxr": "", "wx_ysqk": "", "wx_wxztm": "已受理", "wx_bxip": "127.0.0.1", "wx_ysfz": "0", "wx_bt": "报修测试", "wx_fwqyh": "078f8464-6bc0-4274-91f7-a0ab00df27d4", "wx_bxlxh": "0101", "wx_bxlxm": "水龙头", "wx_wxdh": "Y2017012016--32457", "wx_bxrrzm": "1644529 ", "wx_bxsj": "2017-01-21 01:20:29", "wx_fwqym": "住宅区" }, "signature": "0a1f2e179acf274bd66d5aa02cba32656be1fe5e", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 4.3 提交信息 >URL: /Repair/saveInfo |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key| |name|是|String|学生姓名| |bt|是|String|标题| |bxdd|是|String|报修详细地点,服务区域下面| |bxdh|是|String|报修电话| |bxnr|是|String|报修内容| |fwqy|是|String|服务区域 例:土建维修| |fwxm|是|String|服务项目二级菜单名| |pic|否|String|图片路径 图片路径可由接口14上传图片后获得| > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": {}, "signature": "0a1f2e179acf274bd66d5aa02cba32656be1fe5e", "status_text": "success", "secure": 0 } //200 成功 //400 失败 //404 时,说明存的数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 5 查询功能:建议 ### 5.1 获取所有记录 >URL: /Suggest/getInfo >|参数名|是否必须|传值|说明| >|-|-| >|key|是|String|接口2.1,后端给前端的key| > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "count": 1, "finished": [], //已完成 "unfinished": [ //未完成 { "ServiceProviderName": "饮食服务中心", "stunum": "2015211535", "MessageTypeName": "投诉", "Title": "建议测试数据", "ServiceCategoryName": "餐饮服务/中心食堂", "ReplyCount": "1", "picUrls": [], "LastReplyTime": "2017-01-13 09:07:17", "PostTime": "2017-01-12 23:22:37", "Content": "建议测试数据,请忽略", "Visibility": "未屏蔽", "Id": "51ee9221-5b0a-494f-be07-17cdab2c8a64", "Clicks": "14", "PostStatus": "已回复" } ] }, "signature": "da5f4f85e1e0a863c84c2db20acf0abb319b6a95", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 5.2 获取详情 >URL: /Suggest/getDetail |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key| |appId|是|String|接口5.1中获取的Id| > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "ServiceProviderName": "饮食服务中心", "stunum": "2015211535", "MessageTypeName": "投诉", "Title": "建议测试数据", "ServiceCategoryName": "餐饮服务/中心食堂", "ReplyCount": "0", "picUrls": [], "LastReplyTime": "2017-02-07 19:55:21", "PostTime": "2017-02-07 19:55:21", "Content": "建议测试数据,请忽略", "Visibility": "未屏蔽", "Id": "eb8f6440-d41d-4515-bc60-0d41ca25511d", "Clicks": "4", "PostStatus": "待审核" }, "signature": "ddaebae0a5169c0870ba2a14445aa05e89531a41", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 5.3 提交信息 >URL: /Suggest/saveInfo {"stunum", "name", "title", "phoneNo", "content", "adress", "serviceCategory", "messageType", "pic"} |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key| |name|是|String|反馈人| |title|是|String|标题| |phoneNo|是|long|电话| |content|是|String|反馈内容| |adress|是|String|详细区域| |serviceCategory|是|String|服务区域| |messageType|是|String|建服务类型(投诉、建议)| |pic|否|String|图片路径 图片路径可由接口14上传图片后获得| > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": {}, "signature": "0a1f2e179acf274bd66d5aa02cba32656be1fe5e", "status_text": "success", "secure": 0 } //200 成功 //400 失败 //404 时,说明存的数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 6 查询功能:期末成绩 >URL: /InqueryExam/getGrade |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "student": "2015211535", "grade": "80", "property": "理论", "course": "英语语音与朗读", "term": "20169", "status": "正常考试" } ], "signature": "a7aa1b9f758aac128ffbf60de94292d656aa9b63", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 7 查询功能:考试安排 >URL: /InqueryExam/getExam |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "xh": "2015211535", "examPrivillage": "正常考试", "seat": "37", "week": "12", "student": "undefined", "courseNo": "050566", "weekday": "6", "end_time": "12:10", "course": "英语写作3", "begin_time": "10:10", "classroom": "3111" } ], "signature": "a7aa1b9f758aac128ffbf60de94292d656aa9b63", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 8 查询功能:补考安排 >URL: /InqueryExam/getReexam |参数名|是否必须|传值|说明| |-|-| |key|是|String|接口2.1,后端给前端的key > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "course": "中级英语视听说", "classroom": "3508", "seat": "2", "date": "20170225", "time": "10:10—12:10" } ], "signature": "a7aa1b9f758aac128ffbf60de94292d656aa9b63", "status_text": "success", "secure": 0 } //status 是404 时,说明存的数据过期找不到,前端重新发送code给后端 // 403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 9 查询功能:没课约 与 课表 ### 9.1 没课约查询 石班长的接口有点问题 >URL: /Course/getWukebiao ## 。。 ### 9.2 没课约学生信息查询 >URL: /Course/getStuInfo | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | -------------- | | key | 是 | string | 后端给的第三方key(10) | | param| 是 | string | 学生姓名或学号 | >返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "college": "计算机科学与技术学院", "stuNum": "2015211535", "name": "蒋天星", "class": "04121503班" } ], "signature": "608636dac203ec5f51adf9beb04a9ddd6bff1fb5", "status_text": "success", "secure": 0 } ``` ### 9.3 课表查询 >URL: /Course/getKebiao 返回当前周要上课程 | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | -------------- | | key | 是 | string | 后端给的第三方key(10) | | week | 是 | string | 周数(0~20),传0为当前周| | stuId| 是 | string | 学生学号,需要查询本人课表此项值为 empty| >返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "courses": [ { "period": 2, "week": [ 1, 3, 5, 7, 9, 11, 13, 15 ], "lesson": "一二节", "classroom": "3108", "type": "限选", "hash_day": 0, "teacher": "吴桂军", "begin_lesson": 1, "weekModel": "single", "weekBegin": 1, "weekEnd": 15, "course": "操作系统", "_id": "58aeb3c1a37f5a09bd224c33", "hash_lesson": 0, "day": "星期一", "rawWeek": "1-15周单周" } "week": 0 }, "signature": "37e34dc13aae20eb49f23a05745be4728bf7a976", "status_text": "success", "secure": 0 } ``` ## 10. 图书馆 ### 10.1借阅榜单 > URL: /Library/getBoard | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | -------------- | | key | 是 | string | 后端给的第三方key(10) | > > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "name": "梁稳忠", "rank": 348, "xueyuan": "光电学院/半导体学院" } ], "signature": "6e985ba10bbc775466f164502d8a9303a5d5a398", "status_text": "success", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 10.2 个人信息 > URL: /Library/getUserInfo | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "owedBook": [ { "number": "0591282", "money": "3", "author": "本书编写组", "name": "全国计算机等级考试二级教程:Visual Basic语言程序设计", "position": { "lib": "数图--科技图书阅", "floor": "(T2-101)" } } ], "stuId": "2015210342", "borrowedBook": [], "readerInfo": { "readerName": "叶成林", "money": "0", "borrow": "0", "history": 1, "collection": 5 }, "myCollection": [ { "love": true, "number": "Y0002296", "author": "张公忠,王钰编著", "name": "Norell网组网原理与实用技术", "position": { "lib": "样本图书阅览室", "floor": "(T1-303)" } } ], "historyBook": [ { "number": "0591282", "author": "本书编写组", "name": "全国计算机等级考试二级教程:Visual Basic语言程序设计", "position": { "lib": "数图--科技图书阅", "floor": "(T2-101)" }, "time": "2015-09-16" } ] }, "signature": "a4439b45de2ca46f41e90be83fc35b5d364df46c", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 10.3 搜索书籍 > URL: /Library/getBookInfo | 参数名 | 是否必须 | 传值 | 说明 | | ------- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | | content | 是 | String | 搜索的关键字(例:java) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "borrowroom": "阅览室(不外借)", "code": "Y0263804", "writer": "林富尧编著", "place": "科技图书借阅处(T1-101)", "bookName": "java语言及其程序设计范例" } ], "signature": "f8e49303a50689063a9189721a1d4db841e12f8e", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 10.3 搜索书籍 > URL: /Library/getBookInfo | 参数名 | 是否必须 | 传值 | 说明 | | ------- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | | content | 是 | String | 搜索的关键字(例:java) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "borrowroom": "阅览室(不外借)", "code": "Y0263804", "writer": "林富尧编著", "place": "科技图书借阅处(T1-101)", "bookName": "java语言及其程序设计范例" } ], "signature": "f8e49303a50689063a9189721a1d4db841e12f8e", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 11. 失物招领 ### 11.1失物招领 > URL: /LostAndFound/getLostInfo | 参数名 | 是否必须 | 传值 | 说明 | | ---- | ---- | ------ | -------------- | | key | 是 | string | 后端给的第三方key(10) | | page | 是 | int | 页数(例:1) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "per_page": 15, "total": 263, "data": [ { "connect_name": "小草", "connect_wx": "1832278963", "pro_id": 461, "wx_avatar": "http://wx.qlogo.cn/mmopen/EVGWGlX9SWWFzicQjwsfZNXgSnQa4jpQsdXkAUHnDveBzDZORNicbiaasrIzR7tUFAialKibicBpaUd39Rngd8dKLicjHqorKEeuvE2/0", "pro_description": "一张身份证若干张银行卡,若有拾得者,重金酬谢", "created_at": "2017-01-16 17:52:21", "pro_name": "钱包" } ], "last_page": 18, "next_page_url": "http://enroll.lot.cat/laf/api/view/lost/all/1?lost_found=2", "from": 1, "to": 15, "current_page": 1 }, "signature": "6ee755313d0309aeb4e40b9284655edb60e61c28", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.3详细信息 > URL: /LostAndFound/getDetailInfo | 参数名 | 是否必须 | 传值 | 说明 | | ------ | ---- | ------ | --------------------------- | | key | 是 | string | 后端给的第三方key(10) | | pro_id | 是 | int | 每个信息的 id 用这个id获取详细信息(例:429) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "connect_name": "wangxiao、", "connect_wx": "37077043", "L_or_F_time": "2016-12-18", "wx_avatar": "http://wx.qlogo.cn/mmopen/Q3auHgzwzM7RZtf5Ucwy0PCtR8ncoPWuk0eicw2FTErvFvY7LX04FHRTKDJsyxn99VYSnYT1Yhwxv9v7qOp6iaEv1RNicGxjtYftLfVOQrDHRc/0", "pro_description": "昨天晚上九点多 在灯光球场 我打完球 有一块黑色的卡西欧g shock的手表忘拿了 希望捡到的同学能联系我 大家帮帮忙\u0014/泪奔麻烦大家了 谢谢", "created_at": "2016-12-19 16:16:15", "L_or_F_place": "灯光球场", "connect_phone": "17784450317", "pro_name": "其他" }, "signature": "b501c6215f4b3862007f121a183d6a3ff6a337c4", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.4上传信息 > URL: /LostAndFound/uploadIssue | 参数名 | 是否必须 | 传值 | 说明 | | -------- | ---- | ------ | --------------------------------- | | key | 是 | string | 后端给的第三方key(10) | | property | 是 | String | 信息分类 只能为 "寻物启事" 或者 “失物招领” 例:寻物启事 | | category | 是 | String | 物品分类 例:一卡通 | | detail | 是 | String | 详细描述 例: 测试 接口) | | pickTime | 是 | String | 时间 例: 2016-05-05 | | place | 是 | String | 地点 例:BALABALA) | | qq | 是 | String | qq号 例:11111111 | | phone | 是 | String | 手机号 例:1111111 | > > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "signature": "04489006068efb69f83896dabbc3f2dc28aca123", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### > URL: /LostAndFound/getDetailInfo | 参数名 | 是否必须 | 传值 | 说明 | | ------ | ---- | ------ | --------------------------- | | key | 是 | string | 后端给的第三方key(10) | | pro_id | 是 | int | 每个信息的 id 用这个id获取详细信息(例:429) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "connect_name": "wangxiao、", "connect_wx": "37077043", "L_or_F_time": "2016-12-18", "wx_avatar": "http://wx.qlogo.cn/mmopen/Q3auHgzwzM7RZtf5Ucwy0PCtR8ncoPWuk0eicw2FTErvFvY7LX04FHRTKDJsyxn99VYSnYT1Yhwxv9v7qOp6iaEv1RNicGxjtYftLfVOQrDHRc/0", "pro_description": "昨天晚上九点多 在灯光球场 我打完球 有一块黑色的卡西欧g shock的手表忘拿了 希望捡到的同学能联系我 大家帮帮忙\u0014/泪奔麻烦大家了 谢谢", "created_at": "2016-12-19 16:16:15", "L_or_F_place": "灯光球场", "connect_phone": "17784450317", "pro_name": "其他" }, "signature": "b501c6215f4b3862007f121a183d6a3ff6a337c4", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 12. 用户中心 > URL: /User/getUserInfo | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": { "college": "", "stuNum": "2015210342", "gender": "男", "major": "0101", "grade": "2015", "name": "叶成林", "classNum": "01011501", "idNum": "23155X" }, "signature": "ea00c18e837f2de10d28c7bd39741c60fa177d7e", "secure": 0 } //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 13. 活动模块 ### 11.1显示置顶 > URL:/Activity/Show/getHeadline` | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "img": "XXXXXXXX.png", "id": "6" }, { "img": "XXXXXXXX.png", "id": "5" }, { "img": "XXXXXXXX.png", "id": "4" } ], "signature": "1350f359c12a3516fae867eee6d58dee91cf7039", "status_text": "success", "secure": 0 } //400 数据库连不上 //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.2显示列表 > URL:/Activity/Show/getList` | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | --------------------------------------- | | key | 是 | String | 后端给的第三方key(10) | | type | 是 | String | null,school,academy,class对应 所有 校级 院级 班级 | | page | 是 | int | 页数 | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "date": "2017-02-20", "img": "XXXXXXXX.png", "id": "2", "place": "二教 2103", "title": "双旦快乐,今年过节,我们只玩重邮消消乐" }, { "date": "2017-02-20", "img": "XXXXXXXX.png", "id": "3", "place": "二教 2103", "title": "双旦快乐,今年过节,我们只玩重邮消消乐" }, { "date": "2017-02-20", "img": "XXXXXXXX.png", "id": "7", "place": "二教 2103", "title": "双旦快乐,今年过节,我们只玩重邮消消乐" } ], "signature": "bd2a9b2d0a235796102fc3f74188c3314a5cf34b", "status_text": "success", "secure": 0 } //400 数据库连不上 //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.3显示置顶 > URL:/Activity/Show/getInfoById` | 参数名 | 是否必须 | 传值 | 说明 | | ------ | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | | act_id | 是 | int | 每个活动对应的id号 | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": [ { "date": "2017-02-20", "img": "XXXXXXXX.png", "phone": "13042372005", "place": "二教 2103", "detail": "小程序 blablabla", "title": "双旦快乐,今年过节,我们只玩重邮消消乐", "type": "school", "headline": "true", "status": "-1" } ], "signature": "66990acf147a7beaf7bd71e89e67cec9bd24cf00", "status_text": "success", "secure": 0 } //400 act_id not found或者数据库连不上 //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.4上传信息 > URL:/Activity/Apply/upload | 参数名 | 是否必须 | 传值 | 说明 | | -------- | :--: | ------ | ----------------------- | | key | 是 | String | 后端给的第三方key(10) | | title | 是 | String | 标题 | | host | 是 | String | 主办方 | | date | 是 | String | 时间 | | place | 是 | String | 地点 | | type | 是 | String | 类型 school academy class | | headline | 是 | String | 是否申请头条 是为true 否为false | | detail | 是 | String | 详细信息 | | phone | 是 | String | 联系电话 | | img | 是 | String | 图片地址 | > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": {}, "signature": "68e783d1d8f0afdee40b8abfadf8398ab9dd359d", "status_text": "success", "secure": 0 } //400 act_id not found或者数据库连不上 //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ### 11.5上传图片 > URL:/Activity/Apply/fileUpload | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | -------------- | | key | 是 | String | 后端给的第三方key(10) | | file | 是 | byte | 上传的图片 | > 返回数据: ``` { "source_from":"weapp", "status_code":200, "bags":{ "path":"localhost:8080/Upload/weapp/2017/02/16/21/19/302.jpg" }, "signature":"895d572044e908805c269ceb1f2ed1a855a76910", "status_text":"upload succwess", "secure":0 } //400 act_id not found或者数据库连不上 //404,数据过期找不到,前端重新发送code给后端 //403, error params ,参数错误 //404, "not found in redis,data overdue" key已经过期,从接口2.1重新获取 ``` ## 14上传图片 > URL:/Common/upload | 参数名 | 是否必须 | 传值 | 说明 | | ---- | :--: | ------ | -------------- | | file | 是 | file |图片,前端以form-data格式提交| > 返回数据: ``` { "source_from": "weapp", "status_code": 200, "bags": "https://redrock.cqupt.edu.cn/weapp/Upload/Public/2017/02/23/10/35/83667.JPG", "signature": "e91725680f05a98b37f13f1e1a4a8db2150ad6bd", "status_text": "success", "secure": 0 } //200 成功 //400 上传失败 ``` ------------------------------------------------------------------------------ ## 服务器上需要修改的配置文件 1. mysql配置 applicationContext.xml 2. redis配置 applicationContext.xml 3. weixin.