@lina
2021-10-27T11:01:11.000000Z
字数 23421
阅读 549
志多星 后台 1.0
- 【测试url】http://alpha.api.admin.volunteer.tmallwo.com/api/xxx
- 【线上url】待定
通过 session 来来鉴权,所以携带必要的 cookie 信息即可。
- POST请求Content-Type为:Content-Type:application/x-www-form-urlencoded
- 文件上传时Content-Type为:Content-Type:multipart/form-data
- 对于:Content-Type:application/json、:Content-Type:application/xml不保证完全支持,请谨慎使用
status: [int] 服务器状态码,0 为正常状态,异常状态待定。msg:[string] 返回信息。
data: [object] 数据字段,所有响应数据都在此字段中data.rows: [array],当返回数据为列表时会将数据放在该字段data.count: [number] 当需要分页信息时,直接返回总数,前端自动分页。
示例1
{status: 0,data: {id: 1,key: value}}
示例2
{status: 0,data: {rows: [{key: value}],count: 100}}
通用图片上传文件服务
请求URL
POST
/api/image
请求参数
file: 文件
响应
{status: 0,data: {url: 'http://xxx',info: {len: 32023}}}
url: [string] 文件的访问URLinfo.len: [number] 文件大小
sex:[int]0: 未知
1: 男
2: 女
verify_status:[int]-1: 未提审
0: 审核中
1: 通过
2: 驳回
in_blacklist:[int]0: 不在
1: 在
jump_mode: [int]0:不跳转
1:跳转项目
2:跳转团队
cond_type: [string]
下面以value: label形式给出成就获取条件
pro_join:参加项目次数
check_in:签到打卡次数
reward:累计志愿时长
pro_{服务类别}:参加{服务类别}项目次数
pro_check_in_{服务类别}:参加{服务类别}项目签到打卡次数
reward_{服务类别}:参加{服务类别}项目累计志愿时长
pro_{服务对象}:参加{服务对象}项目次数
pro_check_in_{服务对象}:参加{服务对象}项目签到打卡次数
reward_{服务对象}:参加{服务对象}项目累计志愿时长
互动社区的频率
frequency: [string]
by_turn:每次
by_day: 每天
by_week:每周
分享的频率
frequency: [string]
ev_minute:每分钟
ev_five_m: 每五分钟
ev_ten_m:每10
ev_thirty_m:每30
ev_hour:每小时
ev_three_h:每3
ev_six_h:每6
ev_twelve_h:每12
ev_day:每天
ev_three_d:每3
ev_seven_d:每7
ev_fifteen_d:每15
ev_thirty_d:每30
{id: 123,username: '梦里花落知多少',phone: '15500000000',avatars: 'http://image.com/1.jpeg',real_name: '',nation: '汉族',sex: 0,birthday: 2013-03-03,identifier: '111',slogan: '明天更美丽',reward_time: 12.5,num_type: 1,id_number: 110101198803031321,province_id: 12,province_name: '河北',city_id: 1212,city_name: '保定',county_id: 121212,county_name: '望都县',addr: 'xx路xx小区',family_id: 0,join_family_time: '2017-09-09 13:13:13',good_at: [{}],token:'aaaaaaa',}
id: [int] 用户IDusername: [string] 用户名phone: [string] 用户手机avatars: [string] 头像real_name: [string] 姓名nation: [string] 民族sex: [integer] 性别birthday: [string] 生日identifier: [string] 编号slogan: [string] 口号reward_time: [float] 奖励时长num_type: [int] 证件类型 1内地 2香港 3澳门 4台湾 5护照id_number: [string] 身份证号province_id: [integer] 省份idprovince_name: [string] 省份名称city_id: [integer] 城市idcity_name: [string] 城市名称county_id: [integer] 区县idcounty_name: [string] 区县名称addr: [string] 地址family_id: [integer] 家庭id,是否加入idjoin_family_time: [string] 加入家庭时间good_at: [array] 个人擅长token: [string] token,用户登录态,仅登陆接口下发
{id: 123,name: '服务远征1号队',slogan: '服务为名',logo: 'http://image.com/1.jpg',type: '企事业单位'team_size: 111,identifier: 'aaa',contact_name: '张三',contact_phone: '18866666666',contact_addr: '某某省某某市',parent_id: 13,province_id: 12,province_name: '河北',city_id: 1212,city_name: '保定',county_id: 121212,county_name: '望都县',time_long: 12.5,abstract: '团队市很棒的',created_at: '2017-03-03',category: @服务类别join_status: 1,jinyun_state:0,jinyun_teamId:0,jinyun_regDate:'2020-10-10',jinyun_userSum:0,jinyun_actSum:0,jinyun_timeSum:0,jinyun_description:0,}
id: [integer] IDname: [string] 团队名称slogan: [string] 口号logo: [string] logotype: [string] 类型team_size: [integer] 团队人数identifier: [string] 编号contact_name: [string] 联系人contact_phone: [string] 联系人手机contact_addr: [string] 联系人地址parent_id: [integer] 上级团队idprovince_id: [integer] 省份idprovince_name: [string] 省份名称city_id: [integer] 城市idcity_name: [string] 城市名称county_id: [integer] 区县idcounty_name: [string] 区县名称addr: [string] 地址time_long: [int] 累计时长abstract: [string] 简介created_at: [string] 创建时间category: [object] @服务类别join_status: [integer] 0审核中 1通过 2驳回, 团队详情页下发此字段jinyun_state: [integer] 是否是津云团队 0不是 1是jinyun_teamId: [integer] 津云团队IDjinyun_regDate: [string] 津云团队注册时间jinyun_userSum: [integer] 津云团队成员数jinyun_actSum: [integer] 津云已结束活动数jinyun_timeSum: [integer] 津云团队成员累计服务时长jinyun_description: [string] 津云 团队介绍
{id: 123,name: '程序员慰问团',photo: 'http://image.com/1.jpg',content: '富文本',identifier: '',province_id: 1,province_name: '河北',city_id: 11,city_name: '保定',county_id: 11,county_name: '望都',addr: 'ssss',lng: 123.123433,lat: 40.984,join_begin: '2017-09-09',join_end: '2017-10-10',begin: '2013-03-03 12:12:12',end: '2013-03-03 12:12:12',people_count: 133,join_people_count: 13,reward_time: 13.5,activity_status: 1,category: @服务类别service_object: @服务对象team: @团队信息join_status: 1,my_reward_time: 10,jinyun_state: 1,jinyun_actId: 1,}
id: [integer] 活动IDname: [string] 活动名称photo: [string] 列表大图content: [string] 富文本内容province_id: [integer] 省份idprovince_name: [string] 省份名称city_id: [integer] 城市idcity_name: [string] 城市名称county_id: [integer] 区县idcounty_name: [string] 区县名称addr: [string] 地址lng: [float] 经度lat: [float] 纬度join_begin: [date] 开始报名时间join_end: [date] 结束报名时间begin: [datetime] 活动开始时间end: [datetime] 活动结束时间people_count: [integer] 活动人数join_people_count: [integer] 参加活动人数reward_time: [float] 活动时长/奖励时长activity_status: [integer] 活动状态 1 招募中,2进行中 3已结束category: [object] @服务类型service_object: [object] @服务对象team: [object] @团队信息join_status: [integer] 0审核中 1通过 2驳回, 项目详情页下发此字段my_reward_time: [float] 如加入才项目,则有值 否则为0jinyun_state: [int] 津云标识jinyun_actId: [int] 津云项目id
{service_category_id: 123,service_category_name: '赛事服务'}
service_category_id: [integer] 服务类型idservice_category_name: [string] 类型名称
{service_object_id: 123,service_object_name: 'aaa',}
service_object_id: [integer] 活动IDservice_object_name: [string] 运动员
{id: 123,title: '活动',photo: 'http://image.com/111',jump_mode: 1,jump_id: 1,type:1}
id: [integer] IDtitle: [string] titlephoto: [string] 图片地址jump_mode: [integer] 跳转类型jump_id: [integer] 跳转idtype: [integer] banner类型 0:首页 1:商品
{id: 123,project: @项目信息reward_time: 3.5,content: '文字描述',attachment: [],verify_status: 1,verify_msg: '通过',}
id: [integer] IDproject: [object] @项目信息reward_time: [float] 申请时长content: [string] 申请内容attachment: [array] 附件verify_status: [integer] 审核状态verify_msg: [string] 审核内容
{id: 123,type: 1,content: '文字描述',publish_time: '2019-08-03',from_user: @用户信息}
id: [integer] IDtype: [float] 类型 0全量消息,1单发消息content: [string] 内容publish_time: [string] 发布时间from_user: [object] 发布人
{id: 123,username: 'admin',phone: '15500000000',avatars: 'http://image.com/1.jpeg',real_name: ''}
id: [int] 用户IDusername: [string] 用户名phone: [string] 用户手机avatars: [string] 头像real_name: [string] 姓名
{"id": 2,"user_id": 0,"name": "机构名称","type": "NGO组织","logo": "/uploads/2017-09/246251506503134.png","contact_name": "joh","contact_phone": "13100000000","contact_email": "snow@bite.me","contact_addr": {"id": "110114","province": "北京市","city": "市辖区","district": "昌平区","address": "沙河医院"},"corporate_name": "snow","corporate_id": "431111111111111","corporate_phone": "13600000000","quality": "/uploads/2017-09/151651506503221.png","business_licence": "","in_blacklist": 0,"created_at": "2017-09-27 17:07:08","updated_at": "2017-09-27 17:07:08","username": "","pwd": "","email": "","demand_category": "求助类别","demand_village": "求助城镇"}
id: [integer] 机构IDuser_id: [int] 关联的用户 idname: [string] 机构名称type: [string] 机构类型logo: [string] logocontact_name: [string] 联系人contact_phone: [string] 联系电话contact_email: [string] 联系邮箱contact_addr: [string] 联系地址corporate_name: [string] 机构法人姓名corporate_id: [string] 法人身份证号corporate_phone: [string] 法人联系电话quality: [string] 上传的资质照片in_blacklist: [boolean] 是否禁用状态username: [boolean] 关联用户名pwd: [boolean] 关联用户密码
{...@用户信息,reward_time: 20.3,project_count: 30}
包含所有用户信息,同时还包含以下信息reward_time[float] 志愿总时长project_count参与项目总数
{"id": 1,"org_id": 1,"team_id": 0,"g_name": "水杯","sponsor":"星巴克","thumbnail": "/uploads/2017-09/246251506503134.png","g_img": "/uploads/2017-09/246251506503134.png","content": "超级好用","access": "包你满意","type": 0,"price": "180.00","points": 180,"g_num": 10,"u_num": 1,"start_time": "2017-09-27","end_time": "2017-09-27","created_at": "2017-09-27 17:07:08","updated_at": "2017-09-27 17:07:08","auto_time": "2017-09-27 17:07:08","examine": 0,"is_display": 1,"condition":"女士,vip"}
id: [integer] 商品IDorg_id: [integer] 关联的机构 idteam_id: [integer] 关联的团队 idg_name: [string] 商品名称sponsor: [string] 供应商thumbnail: [string] 小图g_img: [string] 大图content: [string] 商品描述access: [string] 购买成功描述type: [integer] 商品类型price: [decimal] 市场价值points: [integer] 消耗积分g_num: [integer] 库存u_num: [integer] 限制购买数量start_time: [date] 开始时间end_time: [date] 结束时间auto_time: [datetime] 自动下架时间examine: [integer] 是否审核is_display: [integer] 上下架condition: [string] 限制购买标签 英文,分割
{"id": 1,"order_num":"aaaaaa111111","org_id": 1,"team_id": 0,"goods_id": 1,"user_id":1,"status": 0,"num": 1,"points": 180,"collect_time":"2017-09-27 17:07:08","created_at": "2017-09-27 17:07:08","updated_at": "2017-09-27 17:07:08","state":0,"reason":"不合适"}
id: [integer] 订单IDorder_num: [string] 订单编号org_id: [integer] 关联的机构 idteam_id: [integer] 关联的团队 idgoods_id: [integer] 关联的商品 iduser_id: [integer] 关联的用户 idstatus: [integer] 审核状态num: [integer] 购买时数量points: [integer] 购买时消费积分collect_time: [datetime] 领取时间state: [integer] 领取状态reason: [string] 拒绝理由
以下json对应的是org表中st_point_growth字段
其中frequency的可选项见 2.1.16
{"reward": {"point": 1,"growth": 4},"community": {"frequency": ,// 可选值有每次、每天、每周"point": 1,"growth": 4},"user_login": {"point": 1,"growth": 4},"continue_login": {"continue_day": 1, // 连续天数"point": 1,"growth": 4}"share": {"frequency": , // 分享频率,具体选项见"point": 1,"growth": 4},"auth": {"point": 1,"growth": 4},"acheive1": {"point": 1,"growth": 4},"acheive2": {"point": 1,"growth": 4},"acheive3": {"point": 1,"growth": 4},}
机构的积分成长值设置,具体见原型
以下json对应的是org表中st_achieve字段,是个数组,数组里每个值代表一行,对应多个成就,具体见原型
[[{@成就配置信息1},{@成就配置信息2},],[{@成就配置信息3},{@成就配置信息4},],]
以下json对应的是org表中st_rank字段,类型是个数组,从0到5等级依次排列
[{"name": "等级0", // Lv0的等级名称"growth": 1, // 小于等于多少成长值"reward": 1, // 保级需要的时长"evy_deduct": 0, // 扣除的时长},{"name": "等级1", // Lv1的等级名称"growth": 5, // 小于等于多少成长值"reward": 10, // 保级需要的时长"evy_deduct": 3, // 扣除的时长},{"name": "等级2","growth": 10,"reward": 50,"evy_deduct": 6,},{"name": "等级3","growth": 40,"reward": 100,"evy_deduct": 6,},{"name": "等级4","growth": 80,"reward": 200,"evy_deduct": 6,},{"name": "等级5","growth": 200,"reward": 500,"evy_deduct": 6,},]
以下json对应的是org表中st_power字段,类型是个数组,从0到5等级依次排列
{"lv_zero": 1, // Lv0的等级特权倍数"lv_one": 2,"lv_two": 3,"lv_three": 4,"lv_four": 5,"lv_five": 6,}
请求URL
POST
/api/user/info
请求参数
无
响应
{"status": 0,"data":{@后台用户信息,acl: ['team:edit-own', 'xxx']},"msg": ""}
acl 列表
org:admin 机构管理权限,只有平台管理员才返回user:edit_own_org 是否可以个人中心修改机构信息team:admin 是否有团队管理能力user:edit_own_team 是否可以个人中心修改团队信息team:create 是否有创建子团队能力
待续。。
请求URL
GET
/api/banner/{type}
请求参数
type: [int] 机构0/商品1
响应
{"status": 0,"data":{"banners": [@Banner信息]},"msg": ""}
请求URL
POST
/api/banner
请求参数
- banners [Array<@Banner信息>]
响应
{"status": 0,"msg": ""}
请求URL
GET
/api/org
请求参数
- name [string] 结构名称可以用来模糊搜索
响应
{"status": 0,"data":{"rows": [@机构信息],"count": 20},"msg": ""}
请求URL
GET
/api/org/${id}
请求参数
无
响应
{"status": 0,"data": @机构信息,"msg": ""}
请求URL
POST
/api/org/
请求参数
name: [string] 机构名称type: [string] 机构类型logo: [string] logocontact_name: [string] 联系人contact_phone: [string] 联系电话contact_email: [string] 联系邮箱address: [string] 联系地址corporate_name: [string] 机构法人姓名corporate_id: [string] 法人身份证号corporate_phone: [string] 法人联系电话quality: [string] 上传的资质照片in_blacklist: [boolean] 是否禁用状态username: [boolean] 关联用户名pwd: [boolean] 关联用户密码
响应
{"status": 0,"msg": ""}
请求URL
PUT | PATCH
/api/org/${id}
请求参数
name: [string] 机构名称type: [string] 机构类型logo: [string] logocontact_name: [string] 联系人contact_phone: [string] 联系电话contact_email: [string] 联系邮箱address: [string] 联系地址corporate_name: [string] 机构法人姓名corporate_id: [string] 法人身份证号corporate_phone: [string] 法人联系电话quality: [string] 上传的资质照片in_blacklist: [boolean] 是否禁用状态username: [boolean] 关联用户名pwd: [boolean] 关联用户密码
响应
{"status": 0,"msg": ""}
请求URL
POST
/api/org/online/${id|ids}
请求参数
无
响应
{"status": 0,"msg": ""}
请求URL
POST
/api/org/offline/${id|ids}
请求参数
无
响应
{"status": 0,"msg": ""}
请求URL
DELETE
/api/org/${id|ids}
请求参数
无
响应
{"status": 0,"msg": ""}
请求URL
POST
/api/org/{org_id}/module
请求参数
modules[Array] 模块信息
key[string] 模块标识label[string] 模块名icon[string] 模块图标settings[object] 模块配置 如:{label: '自定义名称', icon: '自定义图标'}
响应
{"status": 0,"msg": ""}
请求URL
PUT
/api/org/{id}/settings
只需要修改原来OrgController中saveSettings方法
请求参数
st_point_growth[object] 积分成长配置见,2.1.14st_point_uint[array] 积分单位设置,数组长度为2st_achieve[object] 成就体系设置,见2.1.15st_achieve_op[int] 是否开启成就设置,1开启,0不开启st_rank[object] 用户等级设置,见2.1.16st_rank_op[object] 是否开启用户等级设置,1开启,0不开启st_power[object] 用户特权设置st_power_op[object] 是否开启用户特权设置,1开启,0不开启
响应
{"status": 0,"msg": ""}
指定父级,获取下一级团队的集合,不包含下下级。当没有指定父级时,返回最顶级列表。
请求URL
GET
/api/team/sub/${id || 0}
请求参数
id[number] 团队id(父级id)org_id[number] 机构ID 当没有指定 id 时必须指定。
响应
{"status": 0,"msg": "","data": [{label: "团队名称",value: "团队id"}]}
请求URL
POST
/api/team/apply
请求参数
name[string] 团队名称parent_id[number] 上级团队的IDusername[string] 用户名pwd[string] 密码org_id[number] 所属机构
响应
{"status": 0,"msg": ""}
请求URL
GET
/api/team/jinyun_index
请求参数
- name [string] 团队名称可以用来模糊搜索
响应
{"status": 0,"data":{"rows": [@团队信息],"count": 20},"msg": ""}
在原来的代码上修改,需要在project_clock_in表里添加字段
请求URL
POST
/api/project/{id}/checkin
请求参数
type[string] 签到类型province_id[number] 为0代表全国province_name[number]city_id[number] 为0代表全省city_name[number]county_id[number] 为0代表全市county_id[number] 为0代表全市county_name[number]addr[string] 详细地址(只有city_id不为空时必填)start_time[string] 签到开始时间end_time[string] 签到结束时间distance[number] 签到距离,只有city_id不为空时必填,否则不需要填reward_time[number] 最多计入时长
响应
{"status": 0,"msg": ""}
请求URL
GET
/api/project/jinyun_index
请求参数
- name [string] 项目名称可以用来模糊搜索
响应
{"status": 0,"data":{"rows": [@项目信息],"count": 20},"msg": ""}
如果当前用户是平台用户则返回平台下志愿者列表。
如果当前用户是机构用户,则返回机构下志愿者列表。
如果当前用户是团队用户,则返回团队下志愿者列表。
请求URL
GET
/api/volunteer
请求参数
keyword[string] 用户名、联系电话、证件号码当模糊查找page[number] 当前页数perPage[number] 每页包含当数据量asExcel[boolean] 是否导出为文件
响应
{"status": 0,"msg": "","data":{"rows": [@志愿者信息],"count": 20}}
请求URL
GET
/api/volunteer/applylist
请求参数
keyword[string] 用户名、联系电话、证件号码当模糊查找page[number] 当前页数perPage[number] 每页包含当数据量
响应
{"status": 0,"msg": "","data":{"rows": [@志愿者信息],"count": 20}}
请求URL
POST
/api/volunteer/accept/${userIds}
请求参数
userIds[string] 用户 ID, 多个用户id,用英文逗号隔开,。
响应
{"status": 0,"msg": ""}
请求URL
POST
/api/volunteer/reject/${userIds}
请求参数
userIds[string] 用户 ID, 多个用户id,用英文逗号隔开,。- reason [string] 理由
响应
{"status": 0,"msg": ""}
请求URL
POST
/api/volunteer/notify/${userIds}
请求参数
userIds[string] 用户 ID, 多个用户id,用英文逗号隔开,。没有指定时,根据当前登陆用户来发送给在他下面当所有志愿者。content[string] 内容
响应
{"status": 0,"msg": ""}
请求URL
DELETE
/api/volunteer/${userIds}
请求参数
userIds[string] 用户 ID, 多个用户id,用英文逗号隔开,。
响应
{"status": 0,"msg": ""}
只有团队管理员才可以移除,超管也不可以,因为如果是超管用户,真不知道把志愿者从哪个团队移除。
请求URL
GET
/api/module
请求参数
无
响应
{"status": 0,"msg": "","data": [{"key": "guide","label": "志愿攻略","icon": "http://domain/xx.png","optional": 1,"settings": [{"key": "label","label": "名称","type": "text"},{"key": "icon","label": "Icon","type": "image"}]},...]}
key 模块对唯一标识label 模块名称icon 模块图标optional 模块是否可以自定义settings 当模块被启用时,用户可设置当自定义属性模版。这里无须关系内部什么结构,当 json 处理就好。请求URL
POST
/api/module
请求参数
key模块对唯一标识label模块名称icon模块图标optional模块是否可以自定义settings当模块被启用时,用户可设置当自定义属性模版。这里无须关系内部什么结构,当 json 处理就好。
响应
{"status": 0,"msg": "ok","data": null}
请求URL
PUT
/api/module/{id}
请求参数
key模块对唯一标识label模块名称icon模块图标optional模块是否可以自定义settings当模块被启用时,用户可设置当自定义属性模版。这里无须关系内部什么结构,当 json 处理就好。
响应
{"status": 0,"msg": "ok","data": null}
请求URL
GET
/api/goods
请求参数
- type [int] 商品类型 0实物 1优惠价 [非必填]
- is_display [int] 状态 0上架 1下架 [非必填]
- g_name [string] 商品名称可以用来模糊搜索
响应
{"error_code": 0,"data": {"list":[@积分商品信息]"page":{@分页字段}}"error_message": ""}
请求URL
POST
/api/goods
请求参数
org_id: [integer] 关联的机构 id [非必填]team_id: [integer] 关联的团队 id [非必填]g_name: [string] 商品名称sponsor: [string] 供应商 [非必填]thumbnail: [string] 小图g_img: [string] 大图content: [string] 商品描述access: [string] 购买成功描述type: [integer] 商品类型price: [decimal] 市场价值points: [integer] 消耗积分g_num: [integer] 库存 [0不限]u_num: [integer] 限制购买数量 [非必填 则不限制]auto_time: [datetime] 自动下架时间examine: [integer] 是否开启审核is_display: [integer] 上下架condition: [string] 限制购买标签 英文,分割 [非必填]
响应
{"error_code": 0,"error_message": ""}
请求URL
GET
/api/goods/${id}
请求参数
无
响应
{"error_code": 0,"data": {@积分商品信息}"error_message": ""}
请求URL
POST
/api/goods/{$id}
请求参数
org_id: [integer] 关联的机构 id [非必填]team_id: [integer] 关联的团队 id [非必填]g_name: [string] 商品名称sponsor: [string] 供应商 [非必填]thumbnail: [string] 小图g_img: [string] 大图content: [string] 商品描述access: [string] 购买成功描述type: [integer] 商品类型price: [decimal] 市场价值points: [integer] 消耗积分g_num: [integer] 库存 [0不限]u_num: [integer] 限制购买数量 [非必填 则不限制]auto_time: [datetime] 自动下架时间examine: [integer] 是否开启审核is_display: [integer] 上下架condition: [string] 限制购买标签 英文,分割 [非必填]
响应
{"error_code": 0,"error_message": ""}
请求URL
POST
/api/goods/display/${id|ids}
请求参数
无
响应
{"error_code": 0,"error_message": ""}
请求URL
POST
/api/goods/is_display/${id|ids}
请求参数
无
响应
{"error_code": 0,"error_message": ""}
请求URL
GET
/api/order
请求参数
- status [int] 审核状态 0通过 1已拒绝 2待审核 [非必填]
- keywords [string] 兑换人姓名、电话可以用来模糊搜索
响应
{"error_code": 0,"data": {"list":[@订单信息]"page":{@分页字段}}"error_message": ""}
请求URL
POST
/api/order/pass/${id|ids}
请求参数
无
响应
{"error_code": 0,"error_message": ""}
请求URL
POST
/api/order/refuse/${id|ids}
请求参数
- id|ids [integer] 订单id
- reason [string] 拒绝理由
响应
{"error_code": 0,"error_message": ""}
请求URL
POST
/api/order/receive/${id|ids}
请求参数
无
响应
{"error_code": 0,"error_message": ""}
请求URL
GET
/api/goods/team
请求参数
无
响应
{"error_code": 0,"data": {"list":[@团队信息]"page":{@分页字段}}"error_message": ""}
请求URL
POST
/api/goods/team
请求参数
- id [integer] 团队id
响应
{"error_code": 0,"error_message": ""}
请求URL
GET
/api/achievement
请求参数
无
响应
{"status": 0,"msg": "","data": [{"achieve_key": "guide","name": "成就名称","icons": ["http://domain/xx.png"],"optional": 1,"cond_type": "","settings":{"achieve1": "12","achieve2": "50","achieve3": "100"}},...]}
achieve_key 成就模块唯一标识name 成就名称icons 成就图标optional 是否启用等级,0未启用,1启用cond_type 成就获取条件类型,可选值见2.1.5settings 获取条件配置信息,json字符串,包括achieve1,achieve2,achieve3三个属性请求URL
POST
/api/achievement
请求参数
achieve_key[string] 成就模块唯一标识(必填,且唯一)name[string] 成就名称(必填)icons[array] 成就图标(必填,如果optional为1,则)optional[int] 是否启用等级,0未启用,1启用cond_type[string] 成就获取条件类型,可选值见2.1.5settings[object] 获取条件配置信息,json字符串,包括achieve1,achieve2,achieve3三个属性
响应
{"status": 0,"msg": "ok","data": null}
请求URL
PUT
/api/achievement/{id}
请求参数
achieve_key[string] 不可修改name[string] 成就名称(必填)icons[array] 成就图标(必填,如果optional为1,则)optional[int] 是否启用等级,0未启用,1启用cond_type[string] 成就获取条件类型,可选值见2.1.5settings[object] 获取条件配置信息,json字符串,包括achieve1,achieve2,achieve3三个属性
响应
{"status": 0,"msg": "ok","data": null}
请求URL
GET
/api/achieve_cond
请求参数
无
响应 参照2.1.5中的value和label
{"status": 0,"msg": "ok","data": {"options": [{"label": "参加打卡次数","value": "pro_join"},{"label": "签到打卡次数","value": "check_in"},{"label": "累计志愿时长","value": "reward"},{"label": "文化教育","value": "education"},]}}
请求URL
GET
/support
请求参数
status: 申请资助状态 【非必填】
响应
{"status": 0,"msg": "","data": [{},...]}
请求URL
put
/support/{id}?status=
请求参数
id: 申请资助id 逗号分隔【必填】status: 通过:1 驳回:2【必填】
响应
{"status": 0,"msg": "","data": []}
请求URL
get
/support/show/{id}
请求参数
id: 申请资助id 【必填】
响应
{"status": 0,"msg": "","data": []}
user_name: 申请人姓名user_business_province: 所属业务区域 省user_business_city: 所属业务区域 市user_store: 所属门店user_position: 职位user_job_num: 工号user_phone: 联系电话user_email: 电子邮箱user_apply_rsason: 申请理由user_apply_monry: 申请金额group_name: 组织名称group_credit_num: 统一社会信用代码group_addr: 组织地址group_legal_person: 法人group_user: 联系人group_user_phone: 联系人电话group_user_email: 联系人邮箱group_service: 服务领域group_info: 组织简介group_certificate: 登记证书 [array]project_name: 项目名称project_field: 项目领域 [orject]project_start: 项目实施开始时间project_end: 项目实施结束时间project_addr: 项目实施地点project_money: 项目预算project_info: 项目描述project_effect: 项目实施成效project_object: 项目收益对象project_resources: 额外提供资源plan: [object]
{{activity_name: '活动名称',
activity_start: '活动开始时间',
activity_end: '活动结束时间',
activity_objective: '活动目的',
activity_people: '活动收益人数',
activity_info: '活动内容'
}}budget: [object]
{{budget_type: '预算类型', (见2.1.9)
budget_purpose: '预算用途',
budget_price: '单价',
budget_num: '数量',
budget_money: '金额',
}}budget_reason: 预算理由
请求URL
GET
/warntime
请求参数
status: 异常审核状态 【非必填】0:待审核 1:通过 2:驳回
响应
{"status": 0,"msg": "","data": [{'warn_reason': 异常原因,'before_time': 处罚前,'now_time': 当前,'status': 状态,'result': 处理结果,'user_info': [用户信息],'volunteer_info': [志愿者信息],'team_info': [团队信息],'created_at': 警告时间'signtime_info': [打卡明细],'applytime_info': [申请时长明细],'repairtime_info': [管理员补录明细],},...]}
请求URL
put
/warntime/{id}?status=
请求参数
id: 申请资助id 逗号分隔【必填】,驳回时候只有一个idstatus: 通过:1 驳回:2【必填】paramLength: 项目个数(驳回时候才有)param: 参数名称(驳回时候才有)${param}${项目id}: 该项目id扣减的时长(驳回时候才有)
例如param=project,有两个项目id为12,13,那么请求参数一定有project12和project13两个参数代表需要扣减的时长
响应
{"status": 0,"msg": "","data": []}
请求URL
GET
/demand
请求参数
status: 异常审核状态 【非必填】需求状态 0:待审核 1:服务中 2:已完成 3:已拒绝page: 当前页数【非必填】page_size: 每页包含当数据量【非必填】title: 需求标题【非必填】addr: 服务地点【非必填】name: 需求人【非必填】
响应
{"status": 0,"msg": "","data": {list: []}}
请求URL
PUT
/demand/{id}
请求参数
team_id: 转移时使用【非必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
PUT
/demand/edit/{id}
请求参数
name: 需求人【必填】phone: 电话【必填】category: 类别【必填】title: 标题【必填】content: 详情【必填】village: 乡镇【必填】addr: 详细地点【必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/demand/{id}
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/demand/{id}
请求参数
- report: 结项报告 【非必填】
- project_id: 项目id 【非必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/demand/report/show/{id}
请求参数
- id: 求助id 【必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/demand/show/{id}
请求参数
- id: 求助id 【必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/demand/reject/{id}
请求参数
- id: 求助id 【必填】
响应
{"status": 0,"msg": "","data": {}}
请求URL
get
/org/sub/category
响应
{"status": 0,"msg": "","data": {key value 形式}}
请求URL
get
/org/sub/village
响应
{"status": 0,"msg": "","data": {key value 形式}}
请求URL
get
/project/sug
响应
{"status": 0,"msg": "","data": {key value 形式}}
请求URL
GET
/practice_base
请求参数
name: 基地名称category_id: 类别id
响应
{"status": 0,"msg": "","data": {"count" : 10,"rows": [{"name" : "基地名称" , // 基地名称"address" : "地址" , // 地址 (order表)"contacts" : "小明" , // 联系人"phone" : "137888888888" , // 手机号"base_url" : "/uploads/1.png" ,// 图片地址 (相对路径)"desc" : "小明" , // 详情"base_state" : 1 , // 上下架状态 0下架 1上架"sort" : 1 ,"status" : 1 , // 删除字段"category" : {"name" : "csvn" // 类别名称}}]}}
请求URL
get
/practice_base/{id}
注:id 是基地id
响应
{"status": 0,"msg": "","data": {"name" : "基地名称" , // 基地名称"address" : "地址" , // 地址 (order表)"contacts" : "小明" , // 联系人"phone" : "137888888888" , // 手机号"base_url" : "/uploads/1.png" ,// 图片地址 (相对路径)"desc" : "小明" , // 详情"sort" : 1 ,"status" : 1 , // 上下架状态 0下架 1上架"category" : {"name" : "csvn" // 类别名称}}}
请求URL
POST
/practice_base
请求参数
name: 基地名称address: 基地地址contacts: 联系人phone: 手机号base_url: 图片urldesc: 详情介绍category_id: 分类id
响应
{"status": 0,"msg": "","data": "新增成功"}
请求URL
PUT
/practice_base/{id}
注:id 是基地id
请求参数
id: 基地idname: 基地名称address: 基地地址contacts: 联系人phone: 手机号base_url: 图片urldesc: 详情介绍category_id: 分类id
响应
{"status": 0,"msg": "","data": "修改成功"}
请求URL
置顶
get
/practice_base/recommand/{id}
注:id 是基地id
取消置顶
get
/practice_base/disrecommand/{id}
注:id 是基地id
响应
{"status": 0,"msg": "","data": "修改成功"}
请求URL
下架
get
/practice_base/offline/{id}
注:id 是基地id
上架
get
/practice_base/online/{id}
注:id 是基地id
响应
{"status": 0,"msg": "","data": "成功"}
请求URL
DELETE
/practice_base/{id}
注:id 是基地id
响应
{"status": 0,"msg": "","data": "成功"}
请求URL
get
/practice_base_category
响应
{"status": 0,"msg": "","data": [{"id" : 1,// 分类id"name" : "基地名称" , // 基地名称}]}
请求URL
get
/api/demand
参数:
status = 0 待处理需求列表 【admin,机构,团队 都可以看到】
status = 1 已派单需求列表【admin,机构 可以看到】
status = 2 已完成需求列表【admin,机构,团队 都可以看到】
status = 3 已拒绝需求列表【admin,机构 可以看到】
status = 4 待审核需求列表【admin,机构 可以看到】
status = 5 被驳回需求列表【admin,机构,团队 都可以看到】
响应
{"status": 0,"msg": "","data": []}
请求URL
post
/api/demand/{id}/changeStatus
参数 :
status = 2 通过 5 驳回
remark 说明
响应
{"status": 0,"msg": "","data": null}
请求URL
post
/api/demand/{id}/editReport
参数 :
report 报告内容
响应
{"status": 0,"msg": "","data": null}
请求URL
post
/api/demand/{id}/resubmit
响应
{"status": 0,"msg": "","data": null}
请求URL
post
/api/dashboard
响应
{
"demand_count": 0, // 总供需数
"demand0_count": 1, // 待处理供需数
"demand2_count": 1, // 已完成供需数
"demand1_count": 1, // 已派单供需数
"demand4_count": 1, // 待审核供需数
}
```