[关闭]
@lina 2021-10-27T11:01:11.000000Z 字数 23421 阅读 495

志多星后台1.0 接口文档

志多星 后台 1.0


1.1 基本约定

1.1.1 API Base Url

1.1.2 鉴权字段(身份标识)

通过 session 来来鉴权,所以携带必要的 cookie 信息即可。

1.1.3 HTTP请求中字段要求

  • 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不保证完全支持,请谨慎使用

1.2 通用响应字段

1.2.1 状态字段

  • status: [int] 服务器状态码,0 为正常状态,异常状态待定。
  • msg:[string] 返回信息。

1.2.2 数据字段

  • data: [object] 数据字段,所有响应数据都在此字段中
  • data.rows: [array],当返回数据为列表时会将数据放在该字段
  • data.count: [number] 当需要分页信息时,直接返回总数,前端自动分页。

示例1

  1. {
  2. status: 0,
  3. data: {
  4. id: 1,
  5. key: value
  6. }
  7. }

示例2

  1. {
  2. status: 0,
  3. data: {
  4. rows: [
  5. {
  6. key: value
  7. }
  8. ],
  9. count: 100
  10. }
  11. }

1.3 通用接口

1.3.1 上传图片

通用图片上传文件服务

请求URL

POST
/api/image

请求参数

  • file : 文件

响应

  1. {
  2. status: 0,
  3. data: {
  4. url: 'http://xxx',
  5. info: {
  6. len: 32023
  7. }
  8. }
  9. }
  • url : [string] 文件的访问URL
  • info.len: [number] 文件大小

2、数据结构

2.1 常用字段含义

2.1.1 性别字段

sex:[int]

0: 未知
1: 男
2: 女

2.1.2 审核状态

verify_status:[int]

-1: 未提审
0: 审核中
1: 通过
2: 驳回

2.1.3 黑名单状态

in_blacklist:[int]

0: 不在
1: 在

2.1.4 Banner跳转方式

jump_mode: [int]

0:不跳转
1:跳转项目
2:跳转团队

2.1.5 成就获取条件(2019.1.14新增)

cond_type: [string]
下面以value: label形式给出成就获取条件

pro_join:参加项目次数
check_in:签到打卡次数
reward:累计志愿时长
pro_{服务类别}:参加{服务类别}项目次数
pro_check_in_{服务类别}:参加{服务类别}项目签到打卡次数
reward_{服务类别}:参加{服务类别}项目累计志愿时长
pro_{服务对象}:参加{服务对象}项目次数
pro_check_in_{服务对象}:参加{服务对象}项目签到打卡次数
reward_{服务对象}:参加{服务对象}项目累计志愿时长

2.1.6 积分成长值设置中的字段定义(2019.1.15新增)

互动社区的频率

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

2.2 核心结构

2.2.1 用户信息

  1. {
  2. id: 123,
  3. username: '梦里花落知多少',
  4. phone: '15500000000',
  5. avatars: 'http://image.com/1.jpeg',
  6. real_name: '',
  7. nation: '汉族',
  8. sex: 0,
  9. birthday: 2013-03-03,
  10. identifier: '111',
  11. slogan: '明天更美丽',
  12. reward_time: 12.5,
  13. num_type: 1,
  14. id_number: 110101198803031321,
  15. province_id: 12,
  16. province_name: '河北',
  17. city_id: 1212,
  18. city_name: '保定',
  19. county_id: 121212,
  20. county_name: '望都县',
  21. addr: 'xx路xx小区',
  22. family_id: 0,
  23. join_family_time: '2017-09-09 13:13:13',
  24. good_at: [{}],
  25. token:'aaaaaaa',
  26. }
  • id: [int] 用户ID
  • username: [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] 省份id
  • province_name: [string] 省份名称
  • city_id: [integer] 城市id
  • city_name: [string] 城市名称
  • county_id: [integer] 区县id
  • county_name: [string] 区县名称
  • addr: [string] 地址
  • family_id: [integer] 家庭id,是否加入id
  • join_family_time: [string] 加入家庭时间
  • good_at: [array] 个人擅长
  • token: [string] token,用户登录态,仅登陆接口下发

2.2.2 团队信息

  1. {
  2. id: 123,
  3. name: '服务远征1号队',
  4. slogan: '服务为名',
  5. logo: 'http://image.com/1.jpg',
  6. type: '企事业单位'
  7. team_size: 111,
  8. identifier: 'aaa',
  9. contact_name: '张三',
  10. contact_phone: '18866666666',
  11. contact_addr: '某某省某某市',
  12. parent_id: 13,
  13. province_id: 12,
  14. province_name: '河北',
  15. city_id: 1212,
  16. city_name: '保定',
  17. county_id: 121212,
  18. county_name: '望都县',
  19. time_long: 12.5,
  20. abstract: '团队市很棒的',
  21. created_at: '2017-03-03',
  22. category: @服务类别
  23. join_status: 1,
  24. jinyun_state:0,
  25. jinyun_teamId:0,
  26. jinyun_regDate:'2020-10-10',
  27. jinyun_userSum:0,
  28. jinyun_actSum:0,
  29. jinyun_timeSum:0,
  30. jinyun_description:0,
  • id: [integer] ID
  • name: [string] 团队名称
  • slogan: [string] 口号
  • logo: [string] logo
  • type: [string] 类型
  • team_size: [integer] 团队人数
  • identifier: [string] 编号
  • contact_name: [string] 联系人
  • contact_phone: [string] 联系人手机
  • contact_addr: [string] 联系人地址
  • parent_id: [integer] 上级团队id
  • province_id: [integer] 省份id
  • province_name: [string] 省份名称
  • city_id: [integer] 城市id
  • city_name: [string] 城市名称
  • county_id: [integer] 区县id
  • county_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] 津云团队ID
  • jinyun_regDate: [string] 津云团队注册时间
  • jinyun_userSum: [integer] 津云团队成员数
  • jinyun_actSum: [integer] 津云已结束活动数
  • jinyun_timeSum: [integer] 津云团队成员累计服务时长
  • jinyun_description: [string] 津云 团队介绍

2.2.3 项目信息

  1. {
  2. id: 123,
  3. name: '程序员慰问团',
  4. photo: 'http://image.com/1.jpg',
  5. content: '富文本',
  6. identifier: '',
  7. province_id: 1,
  8. province_name: '河北',
  9. city_id: 11,
  10. city_name: '保定',
  11. county_id: 11,
  12. county_name: '望都',
  13. addr: 'ssss',
  14. lng: 123.123433,
  15. lat: 40.984,
  16. join_begin: '2017-09-09',
  17. join_end: '2017-10-10',
  18. begin: '2013-03-03 12:12:12',
  19. end: '2013-03-03 12:12:12',
  20. people_count: 133,
  21. join_people_count: 13,
  22. reward_time: 13.5,
  23. activity_status: 1,
  24. category: @服务类别
  25. service_object: @服务对象
  26. team: @团队信息
  27. join_status: 1,
  28. my_reward_time: 10,
  29. jinyun_state: 1,
  30. jinyun_actId: 1,
  31. }
  • id: [integer] 活动ID
  • name: [string] 活动名称
  • photo: [string] 列表大图
  • content: [string] 富文本内容
  • province_id: [integer] 省份id
  • province_name: [string] 省份名称
  • city_id: [integer] 城市id
  • city_name: [string] 城市名称
  • county_id: [integer] 区县id
  • county_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] 如加入才项目,则有值 否则为0
  • jinyun_state: [int] 津云标识
  • jinyun_actId: [int] 津云项目id

2.2.4 服务类型信息

  1. {
  2. service_category_id: 123,
  3. service_category_name: '赛事服务'
  • service_category_id: [integer] 服务类型id
  • service_category_name: [string] 类型名称

2.2.5 服务对象信息

  1. {
  2. service_object_id: 123,
  3. service_object_name: 'aaa',
  • service_object_id: [integer] 活动ID
  • service_object_name: [string] 运动员

2.2.6 Banner信息

  1. {
  2. id: 123,
  3. title: '活动',
  4. photo: 'http://image.com/111',
  5. jump_mode: 1,
  6. jump_id: 1,
  7. type:1
  • id: [integer] ID
  • title: [string] title
  • photo: [string] 图片地址
  • jump_mode: [integer] 跳转类型
  • jump_id: [integer] 跳转id
  • type: [integer] banner类型 0:首页 1:商品

2.2.7 时长申请信息

  1. {
  2. id: 123,
  3. project: @项目信息
  4. reward_time: 3.5,
  5. content: '文字描述',
  6. attachment: [],
  7. verify_status: 1,
  8. verify_msg: '通过',
  • id: [integer] ID
  • project: [object] @项目信息
  • reward_time: [float] 申请时长
  • content: [string] 申请内容
  • attachment: [array] 附件
  • verify_status: [integer] 审核状态
  • verify_msg: [string] 审核内容

2.2.8 消息信息

  1. {
  2. id: 123,
  3. type: 1,
  4. content: '文字描述',
  5. publish_time: '2019-08-03',
  6. from_user: @用户信息
  • id: [integer] ID
  • type: [float] 类型 0全量消息,1单发消息
  • content: [string] 内容
  • publish_time: [string] 发布时间
  • from_user: [object] 发布人

2.2.9、 后台用户信息

  1. {
  2. id: 123,
  3. username: 'admin',
  4. phone: '15500000000',
  5. avatars: 'http://image.com/1.jpeg',
  6. real_name: ''
  7. }
  • id: [int] 用户ID
  • username: [string] 用户名
  • phone: [string] 用户手机
  • avatars: [string] 头像
  • real_name: [string] 姓名

2.2.10 机构信息

  1. {
  2. "id": 2,
  3. "user_id": 0,
  4. "name": "机构名称",
  5. "type": "NGO组织",
  6. "logo": "/uploads/2017-09/246251506503134.png",
  7. "contact_name": "joh",
  8. "contact_phone": "13100000000",
  9. "contact_email": "snow@bite.me",
  10. "contact_addr": {
  11. "id": "110114",
  12. "province": "北京市",
  13. "city": "市辖区",
  14. "district": "昌平区",
  15. "address": "沙河医院"
  16. },
  17. "corporate_name": "snow",
  18. "corporate_id": "431111111111111",
  19. "corporate_phone": "13600000000",
  20. "quality": "/uploads/2017-09/151651506503221.png",
  21. "business_licence": "",
  22. "in_blacklist": 0,
  23. "created_at": "2017-09-27 17:07:08",
  24. "updated_at": "2017-09-27 17:07:08",
  25. "username": "",
  26. "pwd": "",
  27. "email": "",
  28. "demand_category": "求助类别",
  29. "demand_village": "求助城镇"
  30. }
  • id: [integer] 机构ID
  • user_id: [int] 关联的用户 id
  • name: [string] 机构名称
  • type: [string] 机构类型
  • logo: [string] logo
  • contact_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] 关联用户密码
  • email: [boolean] 关联用户邮箱

2.2.11 志愿者信息

  1. {
  2. ...@用户信息,
  3. reward_time: 20.3,
  4. project_count: 30
  5. }
  • 包含所有用户信息,同时还包含以下信息
  • reward_time [float] 志愿总时长
  • project_count 参与项目总数

2.2.12 积分商品信息

  1. {
  2. "id": 1,
  3. "org_id": 1,
  4. "team_id": 0,
  5. "g_name": "水杯",
  6. "sponsor":"星巴克",
  7. "thumbnail": "/uploads/2017-09/246251506503134.png",
  8. "g_img": "/uploads/2017-09/246251506503134.png",
  9. "content": "超级好用",
  10. "access": "包你满意",
  11. "type": 0,
  12. "price": "180.00",
  13. "points": 180,
  14. "g_num": 10,
  15. "u_num": 1,
  16. "start_time": "2017-09-27",
  17. "end_time": "2017-09-27",
  18. "created_at": "2017-09-27 17:07:08",
  19. "updated_at": "2017-09-27 17:07:08",
  20. "auto_time": "2017-09-27 17:07:08",
  21. "examine": 0,
  22. "is_display": 1,
  23. "condition":"女士,vip"
  24. }
  • id: [integer] 商品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] 库存
  • u_num: [integer] 限制购买数量
  • start_time: [date] 开始时间
  • end_time: [date] 结束时间
  • auto_time: [datetime] 自动下架时间
  • examine: [integer] 是否审核
  • is_display: [integer] 上下架
  • condition: [string] 限制购买标签 英文,分割

2.2.13 积分商品订单信息

  1. {
  2. "id": 1,
  3. "order_num":"aaaaaa111111",
  4. "org_id": 1,
  5. "team_id": 0,
  6. "goods_id": 1,
  7. "user_id":1,
  8. "status": 0,
  9. "num": 1,
  10. "points": 180,
  11. "collect_time":"2017-09-27 17:07:08",
  12. "created_at": "2017-09-27 17:07:08",
  13. "updated_at": "2017-09-27 17:07:08",
  14. "state":0,
  15. "reason":"不合适"
  • id: [integer] 订单ID
  • order_num: [string] 订单编号
  • org_id: [integer] 关联的机构 id
  • team_id: [integer] 关联的团队 id
  • goods_id: [integer] 关联的商品 id
  • user_id: [integer] 关联的用户 id
  • status: [integer] 审核状态
  • num: [integer] 购买时数量
  • points: [integer] 购买时消费积分
  • collect_time: [datetime] 领取时间
  • state: [integer] 领取状态
  • reason: [string] 拒绝理由

2.2.14 机构成长体系设置(2019-01-15新增)

以下json对应的是org表中st_point_growth字段
其中frequency的可选项见 2.1.16

  1. {
  2. "reward": {
  3. "point": 1,
  4. "growth": 4
  5. },
  6. "community": {
  7. "frequency": ,// 可选值有每次、每天、每周
  8. "point": 1,
  9. "growth": 4
  10. },
  11. "user_login": {
  12. "point": 1,
  13. "growth": 4
  14. },
  15. "continue_login": {
  16. "continue_day": 1, // 连续天数
  17. "point": 1,
  18. "growth": 4
  19. }
  20. "share": {
  21. "frequency": , // 分享频率,具体选项见
  22. "point": 1,
  23. "growth": 4
  24. },
  25. "auth": {
  26. "point": 1,
  27. "growth": 4
  28. },
  29. "acheive1": {
  30. "point": 1,
  31. "growth": 4
  32. },
  33. "acheive2": {
  34. "point": 1,
  35. "growth": 4
  36. },
  37. "acheive3": {
  38. "point": 1,
  39. "growth": 4
  40. },

机构的积分成长值设置,具体见原型

2.2.15 机构成就体系设置(2019-01-15新增)

以下json对应的是org表中st_achieve字段,是个数组,数组里每个值代表一行,对应多个成就,具体见原型

  1. [
  2. [{
  3. @成就配置信息1
  4. },
  5. {
  6. @成就配置信息2
  7. },
  8. ],
  9. [{
  10. @成就配置信息3
  11. },
  12. {
  13. @成就配置信息4
  14. },
  15. ],
  16. ]

2.2.16 机构用户等级设置(2019-01-15新增)

以下json对应的是org表中st_rank字段,类型是个数组,从0到5等级依次排列

  1. [
  2. {
  3. "name": "等级0", // Lv0的等级名称
  4. "growth": 1, // 小于等于多少成长值
  5. "reward": 1, // 保级需要的时长
  6. "evy_deduct": 0, // 扣除的时长
  7. },
  8. {
  9. "name": "等级1", // Lv1的等级名称
  10. "growth": 5, // 小于等于多少成长值
  11. "reward": 10, // 保级需要的时长
  12. "evy_deduct": 3, // 扣除的时长
  13. },
  14. {
  15. "name": "等级2",
  16. "growth": 10,
  17. "reward": 50,
  18. "evy_deduct": 6,
  19. },
  20. {
  21. "name": "等级3",
  22. "growth": 40,
  23. "reward": 100,
  24. "evy_deduct": 6,
  25. },
  26. {
  27. "name": "等级4",
  28. "growth": 80,
  29. "reward": 200,
  30. "evy_deduct": 6,
  31. },
  32. {
  33. "name": "等级5",
  34. "growth": 200,
  35. "reward": 500,
  36. "evy_deduct": 6,
  37. },
  38. ]

2.2.17 机构用户特权设置(2019-01-16新增)

以下json对应的是org表中st_power字段,类型是个数组,从0到5等级依次排列

  1. {
  2. "lv_zero": 1, // Lv0的等级特权倍数
  3. "lv_one": 2,
  4. "lv_two": 3,
  5. "lv_three": 4,
  6. "lv_four": 5,
  7. "lv_five": 6,
  8. }

3、接口列表

3.1 获取当前登陆用户信息

请求URL

POST
/api/user/info

请求参数

响应

  1. {
  2. "status": 0,
  3. "data":{
  4. @后台用户信息,
  5. acl: ['team:edit-own', 'xxx']
  6. },
  7. "msg": ""
  8. }

acl 列表

3.2 首页 Dashboard 相关接口

3.2.1 机构/积分商品banner获取接口

请求URL

GET
/api/banner/{type}

请求参数

  • type: [int] 机构0/商品1

响应

  1. {
  2. "status": 0,
  3. "data":{
  4. "banners": [
  5. @Banner信息
  6. ]
  7. },
  8. "msg": ""
  9. }

3.2.2 机构/积分商品banner保存接口

请求URL

POST
/api/banner

请求参数

  • banners [Array<@Banner信息>]

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3 机构相关接口

3.3.1 机构列表

请求URL

GET
/api/org

请求参数

  • name [string] 结构名称可以用来模糊搜索

响应

  1. {
  2. "status": 0,
  3. "data":{
  4. "rows": [
  5. @机构信息
  6. ],
  7. "count": 20
  8. },
  9. "msg": ""
  10. }

3.3.2 机构详情

请求URL

GET
/api/org/${id}

请求参数

响应

  1. {
  2. "status": 0,
  3. "data": @机构信息,
  4. "msg": ""
  5. }

3.3.3 新建机构

请求URL

POST
/api/org/

请求参数

  • name: [string] 机构名称
  • type: [string] 机构类型
  • logo: [string] logo
  • contact_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] 关联用户密码
  • email: [boolean] 关联用户邮箱

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.4 保存机构

请求URL

PUT | PATCH
/api/org/${id}

请求参数

  • name: [string] 机构名称
  • type: [string] 机构类型
  • logo: [string] logo
  • contact_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] 关联用户密码
  • email: [boolean] 关联用户邮箱

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.5 禁用机构

请求URL

POST
/api/org/online/${id|ids}

请求参数

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.6 恢复机构

请求URL

POST
/api/org/offline/${id|ids}

请求参数

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.6 删除机构

请求URL

DELETE
/api/org/${id|ids}

请求参数

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.7 保存机构模块信息

请求URL

POST
/api/org/{org_id}/module

请求参数

  • modules [Array] 模块信息
    • key [string] 模块标识
    • label [string] 模块名
    • icon [string] 模块图标
    • settings [object] 模块配置 如: {label: '自定义名称', icon: '自定义图标'}

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.3.8 保存机构的成长成就体系的设置(2019-01-15新增)

请求URL

PUT
/api/org/{id}/settings

只需要修改原来OrgController中saveSettings方法

请求参数

  • st_point_growth [object] 积分成长配置见,2.1.14
  • st_point_uint [array] 积分单位设置,数组长度为2
  • st_achieve [object] 成就体系设置,见2.1.15
  • st_achieve_op [int] 是否开启成就设置,1开启,0不开启
  • st_rank [object] 用户等级设置,见2.1.16
  • st_rank_op [object] 是否开启用户等级设置,1开启,0不开启
  • st_power [object] 用户特权设置
  • st_power_op [object] 是否开启用户特权设置,1开启,0不开启

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.4 团队相关

3.4.1 下级团队信息获取

指定父级,获取下一级团队的集合,不包含下下级。当没有指定父级时,返回最顶级列表。

请求URL

GET
/api/team/sub/${id || 0}

请求参数

  • id [number] 团队id(父级id)
  • org_id [number] 机构ID 当没有指定 id 时必须指定。

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. label: "团队名称",
  7. value: "团队id"
  8. }
  9. ]
  10. }

3.4.2 团队注册

请求URL

POST
/api/team/apply

请求参数

  • name [string] 团队名称
  • parent_id [number] 上级团队的ID
  • username [string] 用户名
  • pwd [string] 密码
  • org_id [number] 所属机构

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.4.3 津云团队列表

请求URL

GET
/api/team/jinyun_index

请求参数

  • name [string] 团队名称可以用来模糊搜索

响应

  1. {
  2. "status": 0,
  3. "data":{
  4. "rows": [
  5. @团队信息
  6. ],
  7. "count": 20
  8. },
  9. "msg": ""
  10. }

3.5 项目相关

3.5.2 项目地址修改(2019-01-20修改)

3.5.2 新建项目签到码(2019-01-20修改)

在原来的代码上修改,需要在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] 最多计入时长

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.4.3 津云项目列表

请求URL

GET
/api/project/jinyun_index

请求参数

  • name [string] 项目名称可以用来模糊搜索

响应

  1. {
  2. "status": 0,
  3. "data":{
  4. "rows": [
  5. @项目信息
  6. ],
  7. "count": 20
  8. },
  9. "msg": ""
  10. }

3.6 志愿者管理相关

3.6.1 志愿者列表

如果当前用户是平台用户则返回平台下志愿者列表。
如果当前用户是机构用户,则返回机构下志愿者列表。
如果当前用户是团队用户,则返回团队下志愿者列表。

请求URL

GET
/api/volunteer

请求参数

  • keyword [string] 用户名、联系电话、证件号码当模糊查找
  • page [number] 当前页数
  • perPage [number] 每页包含当数据量
  • asExcel [boolean] 是否导出为文件

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data":{
  5. "rows": [
  6. @志愿者信息
  7. ],
  8. "count": 20
  9. }
  10. }

3.6.2 获取当前团队用户下正在申请加入的志愿者

请求URL

GET
/api/volunteer/applylist

请求参数

  • keyword [string] 用户名、联系电话、证件号码当模糊查找
  • page [number] 当前页数
  • perPage [number] 每页包含当数据量

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data":{
  5. "rows": [
  6. @志愿者信息
  7. ],
  8. "count": 20
  9. }
  10. }

3.6.3 通过志愿者申请

请求URL

POST
/api/volunteer/accept/${userIds}

请求参数

  • userIds [string] 用户 ID, 多个用户id,用英文逗号隔开 ,

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.6.4 拒绝志愿者申请

请求URL

POST
/api/volunteer/reject/${userIds}

请求参数

  • userIds [string] 用户 ID, 多个用户id,用英文逗号隔开 ,
  • reason [string] 理由

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.6.5 发送站内信

请求URL

POST
/api/volunteer/notify/${userIds}

请求参数

  • userIds [string] 用户 ID, 多个用户id,用英文逗号隔开 ,。没有指定时,根据当前登陆用户来发送给在他下面当所有志愿者。
  • content [string] 内容

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

3.6.6 移除志愿者

请求URL

DELETE
/api/volunteer/${userIds}

请求参数

  • userIds [string] 用户 ID, 多个用户id,用英文逗号隔开 ,

响应

  1. {
  2. "status": 0,
  3. "msg": ""
  4. }

只有团队管理员才可以移除,超管也不可以,因为如果是超管用户,真不知道把志愿者从哪个团队移除。

3.7 用户中心相关

3.8 模块管理

3.8.1 获取所有模块

请求URL

GET
/api/module

请求参数

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. "key": "guide",
  7. "label": "志愿攻略",
  8. "icon": "http://domain/xx.png",
  9. "optional": 1,
  10. "settings": [
  11. {
  12. "key": "label",
  13. "label": "名称",
  14. "type": "text"
  15. },
  16. {
  17. "key": "icon",
  18. "label": "Icon",
  19. "type": "image"
  20. }
  21. ]
  22. },
  23. ...
  24. ]
  25. }

3.8.2 新增模块信息

请求URL

POST
/api/module

请求参数

  • key 模块对唯一标识
  • label 模块名称
  • icon 模块图标
  • optional 模块是否可以自定义
  • settings 当模块被启用时,用户可设置当自定义属性模版。这里无须关系内部什么结构,当 json 处理就好。

响应

  1. {
  2. "status": 0,
  3. "msg": "ok",
  4. "data": null
  5. }

3.8.3 编辑模块信息

请求URL

PUT
/api/module/{id}

请求参数

  • key 模块对唯一标识
  • label 模块名称
  • icon 模块图标
  • optional 模块是否可以自定义
  • settings 当模块被启用时,用户可设置当自定义属性模版。这里无须关系内部什么结构,当 json 处理就好。

响应

  1. {
  2. "status": 0,
  3. "msg": "ok",
  4. "data": null
  5. }

3.9 积分商城

3.9.1 积分商品接口

3.9.1.1 积分商品列表

请求URL

GET
/api/goods

请求参数

  • type [int] 商品类型 0实物 1优惠价 [非必填]
  • is_display [int] 状态 0上架 1下架 [非必填]
  • g_name [string] 商品名称可以用来模糊搜索

响应

  1. {
  2. "error_code": 0,
  3. "data": {
  4. "list":[
  5. @积分商品信息
  6. ]
  7. "page":{
  8. @分页字段
  9. }
  10. }
  11. "error_message": ""
  12. }
3.9.1.2 新增积分商品

请求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] 限制购买标签 英文,分割 [非必填]

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }
3.9.1.3 积分商品详情

请求URL

GET
/api/goods/${id}

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "data": {
  4. @积分商品信息
  5. }
  6. "error_message": ""
  7. }
3.9.1.4 保存积分商品

请求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] 限制购买标签 英文,分割 [非必填]

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }
3.9.1.5 下架积分商品

请求URL

POST
/api/goods/display/${id|ids}

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }
3.9.1.6 上架积分商品

请求URL

POST
/api/goods/is_display/${id|ids}

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }

3.9.2 积分商城订单接口

3.9.2.1 订单列表

请求URL

GET
/api/order

请求参数

  • status [int] 审核状态 0通过 1已拒绝 2待审核 [非必填]
  • keywords [string] 兑换人姓名、电话可以用来模糊搜索

响应

  1. {
  2. "error_code": 0,
  3. "data": {
  4. "list":[
  5. @订单信息
  6. ]
  7. "page":{
  8. @分页字段
  9. }
  10. }
  11. "error_message": ""
  12. }
3.9.2.2 订单通过

请求URL

POST
/api/order/pass/${id|ids}

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }
3.9.2.3 订单拒绝

请求URL

POST
/api/order/refuse/${id|ids}

请求参数

  • id|ids [integer] 订单id
  • reason [string] 拒绝理由

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }
3.9.2.4 订单已领取

请求URL

POST
/api/order/receive/${id|ids}

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }

3.9.3 商户管理

3.9.3.1 团队展示

请求URL

GET
/api/goods/team

请求参数

响应

  1. {
  2. "error_code": 0,
  3. "data": {
  4. "list":[
  5. @团队信息
  6. ]
  7. "page":{
  8. @分页字段
  9. }
  10. }
  11. "error_message": ""
  12. }
3.9.3.2 删除团队添加商品权限

请求URL

POST
/api/goods/team

请求参数

  • id [integer] 团队id

响应

  1. {
  2. "error_code": 0,
  3. "error_message": ""
  4. }

3.10 成就管理(2019.1.14新增)

3.10.1 获取所有成就

请求URL

GET
/api/achievement

请求参数

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. "achieve_key": "guide",
  7. "name": "成就名称",
  8. "icons": ["http://domain/xx.png"],
  9. "optional": 1,
  10. "cond_type": "",
  11. "settings":
  12. {
  13. "achieve1": "12",
  14. "achieve2": "50",
  15. "achieve3": "100"
  16. }
  17. },
  18. ...
  19. ]
  20. }

3.8.2 新增模块信息

请求URL

POST
/api/achievement

请求参数

  • achieve_key [string] 成就模块唯一标识(必填,且唯一)
  • name [string] 成就名称(必填)
  • icons [array] 成就图标(必填,如果optional为1,则)
  • optional [int] 是否启用等级,0未启用,1启用
  • cond_type [string] 成就获取条件类型,可选值见2.1.5
  • settings [object] 获取条件配置信息,json字符串,包括achieve1,achieve2,achieve3三个属性

响应

  1. {
  2. "status": 0,
  3. "msg": "ok",
  4. "data": null
  5. }

3.8.3 编辑模块信息

请求URL

PUT
/api/achievement/{id}

请求参数

  • achieve_key [string] 不可修改
  • name [string] 成就名称(必填)
  • icons [array] 成就图标(必填,如果optional为1,则)
  • optional [int] 是否启用等级,0未启用,1启用
  • cond_type [string] 成就获取条件类型,可选值见2.1.5
  • settings [object] 获取条件配置信息,json字符串,包括achieve1,achieve2,achieve3三个属性

响应

  1. {
  2. "status": 0,
  3. "msg": "ok",
  4. "data": null
  5. }

3.10.4 获取所有可选成就条件接口

请求URL

GET
/api/achieve_cond

请求参数

响应 参照2.1.5中的value和label

  1. {
  2. "status": 0,
  3. "msg": "ok",
  4. "data": {
  5. "options": [
  6. {
  7. "label": "参加打卡次数",
  8. "value": "pro_join"
  9. },
  10. {
  11. "label": "签到打卡次数",
  12. "value": "check_in"
  13. },
  14. {
  15. "label": "累计志愿时长",
  16. "value": "reward"
  17. },
  18. {
  19. "label": "文化教育",
  20. "value": "education"
  21. },
  22. ]
  23. }
  24. }

3.11 星巴克申请资助接口

3.11.1 获取资助申请列表接口

请求URL

GET
/support

请求参数

  • status: 申请资助状态 【非必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. },
  7. ...
  8. ]
  9. }

3.11.2 通过/驳回资助申请接口

请求URL

put
/support/{id}?status=

请求参数

  • id: 申请资助id 逗号分隔【必填】
  • status: 通过:1 驳回:2【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. ]
  6. }

3.11.2 资助申请详情接口

请求URL

get
/support/show/{id}

请求参数

  • id: 申请资助id 【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. ]
  6. }
  • 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: 预算理由

3.12 志愿异常处理接口(3.30修改)

3.12.1 获取异常列表接口

请求URL

GET
/warntime

请求参数

  • status: 异常审核状态 【非必填】0:待审核 1:通过 2:驳回

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. 'warn_reason': 异常原因,
  7. 'before_time': 处罚前,
  8. 'now_time': 当前,
  9. 'status': 状态,
  10. 'result': 处理结果,
  11. 'user_info': [
  12. 用户信息
  13. ],
  14. 'volunteer_info': [
  15. 志愿者信息
  16. ],
  17. 'team_info': [
  18. 团队信息
  19. ],
  20. 'created_at': 警告时间
  21. 'signtime_info': [
  22. 打卡明细
  23. ],
  24. 'applytime_info': [
  25. 申请时长明细
  26. ],
  27. 'repairtime_info': [
  28. 管理员补录明细
  29. ],
  30. },
  31. ...
  32. ]
  33. }

3.12.2 通过/驳回异常接口

请求URL

put
/warntime/{id}?status=

请求参数

  • id: 申请资助id 逗号分隔【必填】,驳回时候只有一个id
  • status: 通过:1 驳回:2【必填】
  • paramLength: 项目个数(驳回时候才有)
  • param: 参数名称(驳回时候才有)
  • ${param}${项目id}: 该项目id扣减的时长(驳回时候才有)

例如param=project,有两个项目id为12,13,那么请求参数一定有project12和project13两个参数代表需要扣减的时长

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. ]
  6. }

3.13 南漳需求-求助

3.13.1 获取求助列表接口

请求URL

GET
/demand

请求参数

  • status: 异常审核状态 【非必填】需求状态 0:待审核 1:服务中 2:已完成 3:已拒绝
  • page: 当前页数【非必填】
  • page_size: 每页包含当数据量【非必填】
  • title: 需求标题【非必填】
  • addr: 服务地点【非必填】
  • name: 需求人【非必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. list: []
  6. }
  7. }

3.13.2 派单求助接口

请求URL

PUT
/demand/{id}

请求参数

  • team_id: 转移时使用【非必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.3 编辑求助接口

请求URL

PUT
/demand/edit/{id}

请求参数

  • name: 需求人【必填】
  • phone: 电话【必填】
  • category: 类别【必填】
  • title: 标题【必填】
  • content: 详情【必填】
  • village: 乡镇【必填】
  • addr: 详细地点【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.4 取消求助接口

请求URL

get
/demand/{id}

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.5 结项接口

请求URL

get
/demand/{id}
请求参数

  • report: 结项报告 【非必填】
  • project_id: 项目id 【非必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.6 获取结项接口

请求URL

get
/demand/report/show/{id}
请求参数

  • id: 求助id 【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.7 获取求助详情接口

请求URL

get
/demand/show/{id}
请求参数

  • id: 求助id 【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.8 拒绝求助接口

请求URL

get
/demand/reject/{id}
请求参数

  • id: 求助id 【必填】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. }
  6. }

3.13.9 获取服务类别分类接口

请求URL

get
/org/sub/category

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. key value 形式
  6. }
  7. }

3.13.10 获取城镇接口

请求URL

get
/org/sub/village

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. key value 形式
  6. }
  7. }

3.13.10 获取项目接口

请求URL

get
/project/sug

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. key value 形式
  6. }
  7. }

3.14 实践基地

3.14.1 实践基地列表接口

请求URL

GET
/practice_base

请求参数

  • name: 基地名称
  • category_id: 类别id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. "count" : 10,
  6. "rows": [
  7. {
  8. "name" : "基地名称" , // 基地名称
  9. "address" : "地址" , // 地址 (order表)
  10. "contacts" : "小明" , // 联系人
  11. "phone" : "137888888888" , // 手机号
  12. "base_url" : "/uploads/1.png" ,// 图片地址 (相对路径)
  13. "desc" : "小明" , // 详情
  14. "base_state" : 1 , // 上下架状态 0下架 1上架
  15. "sort" : 1 ,
  16. "status" : 1 , // 删除字段
  17. "category" : {
  18. "name" : "csvn" // 类别名称
  19. }
  20. }
  21. ]
  22. }
  23. }

3.14.2 实践基地详情

请求URL

get
/practice_base/{id}
注:id 是基地id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. "name" : "基地名称" , // 基地名称
  6. "address" : "地址" , // 地址 (order表)
  7. "contacts" : "小明" , // 联系人
  8. "phone" : "137888888888" , // 手机号
  9. "base_url" : "/uploads/1.png" ,// 图片地址 (相对路径)
  10. "desc" : "小明" , // 详情
  11. "sort" : 1 ,
  12. "status" : 1 , // 上下架状态 0下架 1上架
  13. "category" : {
  14. "name" : "csvn" // 类别名称
  15. }
  16. }
  17. }

3.14.3 实践基地新增

请求URL

POST
/practice_base

请求参数

  • name: 基地名称
  • address: 基地地址
  • contacts: 联系人
  • phone: 手机号
  • base_url: 图片url
  • desc: 详情介绍
  • category_id: 分类id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": "新增成功"
  5. }

3.14.4 实践基地修改

请求URL

PUT
/practice_base/{id}
注:id 是基地id

请求参数

  • id: 基地id
  • name: 基地名称
  • address: 基地地址
  • contacts: 联系人
  • phone: 手机号
  • base_url: 图片url
  • desc: 详情介绍
  • category_id: 分类id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": "修改成功"
  5. }

3.14.5 实践基地置顶状态改变

请求URL

置顶
get
/practice_base/recommand/{id}
注:id 是基地id
取消置顶
get
/practice_base/disrecommand/{id}
注:id 是基地id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": "修改成功"
  5. }

3.14.6 实践基地上下架状态改变

请求URL

下架
get
/practice_base/offline/{id}
注:id 是基地id
上架
get
/practice_base/online/{id}
注:id 是基地id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": "成功"
  5. }

3.14.7 实践基地删除

请求URL

DELETE
/practice_base/{id}
注:id 是基地id

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": "成功"
  5. }

3.14.8 实践基地 分类列表

请求URL

get
/practice_base_category

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. "id" : 1,// 分类id
  7. "name" : "基地名称" , // 基地名称
  8. }
  9. ]
  10. }

3.15 供需

3.15.1 供需列表

请求URL

get
/api/demand
参数:
status = 0 待处理需求列表 【admin,机构,团队 都可以看到】
status = 1 已派单需求列表【admin,机构 可以看到】
status = 2 已完成需求列表【admin,机构,团队 都可以看到】
status = 3 已拒绝需求列表【admin,机构 可以看到】
status = 4 待审核需求列表【admin,机构 可以看到】
status = 5 被驳回需求列表【admin,机构,团队 都可以看到】

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. ]
  6. }

3.15.2 供需审核接口

请求URL

post
/api/demand/{id}/changeStatus
参数 :
status = 2 通过 5 驳回
remark 说明

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": null
  5. }

3.15.3 编辑结项报告接口

请求URL

post
/api/demand/{id}/editReport
参数 :
report 报告内容

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": null
  5. }

3.15.4 重新提交审核接口

请求URL

post
/api/demand/{id}/resubmit

响应

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": null
  5. }

3.15.5 首页增加了几个字段

请求URL

post
/api/dashboard

响应

{
"demand_count": 0, // 总供需数
"demand0_count": 1, // 待处理供需数
"demand2_count": 1, // 已完成供需数
"demand1_count": 1, // 已派单供需数
"demand4_count": 1, // 待审核供需数
}
```

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注