# weekSevenClient **Repository Path**: imeto/weekFiveClient ## Basic Information - **Project Name**: weekSevenClient - **Description**: upper family group in ita - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2016-11-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #weekSevenClient Transfer the J2EE project to MEAN project. - 为了符合RESTful风格,部分路由合并 - `[]`代表返回的是一个数组,`{}`代表返回的是一个对象,实质都是JSON - 对于路径参数列,只列出需要处理的项,如:`page_num`&`page_size`,表示需要处理页数/页面大小,在地址的表现如下:`?page_num=:a&page_size=:b` - 紧接的`()`内为可能的值列表 - 因为RESTful风格的原因,数组中每一项都有key-value,所以设计上对需要请求的资源进行字段拓展,返回完整的资源信息,如:原来获取所有白名单商家的ID => 返回所有白名单商家的所有详细信息 - 注意,在RESTful风格下,**路径参数**为**查询条件** - *被推荐菜品*指M端推荐的菜品,*广告菜品*指确定推送到广告的菜品 [TOC] ## A端路由 ### Merchant模块(/merchant) | 路径 | 功能说明 | 请求类型|路径参数 | 请求体|返回结构| | ------------ |-------------|:----:|----|----|-----| |/ |查询所有注册商家| GET |`type`("low")&`page`&`per_page`|`null`|[{merchant}]| |/:mId|更改商家状态|PUT|`null`|`mStatus`(1:pass, 2:通过, 3:refuse, 4:拉黑)|{merchant}| 1. 其中第一条type筛选条件,目前只有查询所有低评分商家功能, 2. 第一条需要判断路径参数是否有值,`type`只对等于"low"做处理,`page`为null时不进行分页 3. 因为路由合并,导致第一条的代码量增多,可能出现忘了**判断**等错误 ### 提供其它系统访问的WebServices(/ws) | 路径 | 功能说明 | 请求类型|路径参数 | 请求体|返回结构| | ------------ |-------------| :-----:|----|----|-----| |/|列出以下所有地址|ALL|`null`|`null`|[{url, describe}]| |/merchant/{mId}|查询指定商家信息| GET |`null`|`null`|{merchant}| |/merchant|查询所有白名单商家|GET|`mStatus`(2)|`null`|[{merchant}]| |/food|查询所有广告菜品|GET|`fStatus`(3)|`null`|[{food}]| |/order/:oId|查询指定订单状态|GET|`null`|`null`|[{order}]| ### food模块(/food) | 路径 | 功能说明 | 请求类型|路径参数 | 请求体|返回结构| | ------------ |-----------| :-----:|----|----|-----| |/|查询所有菜品|GET|`page`&`per_page`|`null`|[{food}]| |/:fId|更改被推荐菜品状态|PUT|`null`|`fStatus`(2,3)|{food}| 1. 其中第一条需要判断路径参数是否有值,`page`为null时不进行分页 ### order模块(/order) | 路径 | 功能说明 | 请求类型|路径参数 | 请求体|返回结构| | ------------ |-------------| :-----:|----|----|-----| |/|获取所有order|GET|`page`&`per_page`|`null`|[{order}]| |/:oId|获取order详细信息(后台从webservice查询获取)|GET|`null`|`null`|{order}, 从webservice获取| |/:oId|更改投诉订单状态|PUT|`null`|oStatus(4:拉黑,3:扣除押金,2:驳回)|{order}| 1. 其中第一条需要判断路径参数是否有值,`page`为null时不进行分页 ### common模块(/common) | 路径 | 功能说明 | 请求类型|路径参数 | 请求体|返回结构| | ------------ |-------------| :-----:|----|----|-----| |/tel|获取所有商家电话|GET|`null`|`null`|[mTel]| |/merchant/:tel|根据电话获取商家信息|GET|`null`|`null`|{merchant}| | | | | | | | |/:mId|更改商家状态|PUT|`null`|mStatus(2:拉白,4:拉黑)|{merchant}| 1. 对于第一条为非RESTful风格设计,因其用于jquery自动补全插件 2. 最后一条为重复功能,可不实现 3. 倒数第二条可以合并到merchant模块,待定 ## M: Merchant end #C端路由 ##Client模块(/client) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/|注册新用户|post|`null`|{Client}|{Client}| |/|修改用户信息|put|`null`|{Client}|{Client}| |/login|登录|post|`null`|{client}|{client}| |/logout|注销|get|`null`|`null`|{ }| |/|判断用户是否已登录|get|`null`|`null`|{Client}| ##Food模块(/food) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/|ws从A端获取广告菜品|get|`null`|`null`|[{food}]| |/|获得指定商家的所有菜品|get|mId=mId|`null`|[{food}]| ##Cart模块(/cart) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/|添加菜品进购物车|put|`null`|{food}|{food}| |/|根据商家ID显示对应购物车|get|mId=mId|`null`|[{food}]| ##Merchant模块(/merchant) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/merchant/:mId|获取商家信息|get|`null`|`null`|{Merchant}| |/merchant|获取白名单商家|get|mStatus=2|`null`|[{merchant}]| ##Order模块(/order) ###(用户已登录) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/|用户添加订单,清空对应商家购物车|post|`null`|{order}|{order}| |/|获取用户的所有订单|get|`null`|`null`|[{order}]| |/complaint|获取用户所有投诉订单|get|`null`|`null`|[{order}]| |/:oId|确认收货并评分(小于5分jms)|put|`null`|oStark=[1-10]|{order}| |/:oId|用户投诉订单,jms至A|put|`null`|complaint=string|{order}| |/:oId|获取投诉订单的处理结果,ws至A端|get|`null`|`null`|{order}| ##webService模块(/ws) |路径|功能说明|请求类型|请求参数|请求体|返回结构| |:---:|:---:|:---:|:---:|:---:|:---:| |/order/:oId|暴露给A端获取投诉订单详情的接口|get|`null`|`null`|{order}|