西藏巴青项目

预约服务接口说明.md 5.3KB

预约服务(移动端)

1. 概述

说明
Base Path /app/bookingService
资源视图 v_appointment_resource(DDL:sql/biz_v_appointment_resource.sql
视图依赖 biz_tech_resource.expert_rating(见 sql/biz_tech_resource_alter_expert_rating.sql
预约主表 biz_service_appointment
专家评价 biz_service_appointment_review
鉴权 需登录

Tab 与资源类型(列表 resourceType 必传):

Tab resourceType
兽医(默认) 004001
专家 004005
诊疗机构 004003

资料页:列表项已返回详情字段,无单独详情接口

1.1 视图 v_appointment_resource 列说明

视图列 兽医 004001 机构 004003 专家 004005
photo_file_url biz_medical_resource.photo_file_url 同左 biz_tech_resource.photo_file_url
max_daily_appointments 有值(机构)/ 兽医多为 NULL 有值 NULL
expert_rating NULL NULL biz_tech_resource.expert_rating

其余列三端同源字段名一致(名称、介绍、地址、服务时段等)。

提交后状态

类型 初始 status
兽医、专家 0 待确认
诊疗机构 5 已预约

2. 近 7 日日期条

GET /app/bookingService/dates

当天起连续 7 天(含当天)。

响应 data[]

字段 说明
weekdayName 周几(如「周一」)
weekday 数字:周一=1 … 周日=7
dateMmDd 日期 MM-dd
appointDate 日期 yyyy-MM-dd(提交预约用)

3. 可预约资源列表

GET /app/bookingService/resource/list

参数 必填 说明
resourceType 004001 / 004005 / 004003
resourceName 名称模糊
weekday 周几 1~7;传入时仅返回 service_weekdays 含该值的资源
pageNum 默认 1
pageSize 默认 10,最大 50

响应TableDataInforows[] 字段(与视图列一一对应,驼峰):

字段 说明
id 资源主键
resourceType 004001 / 004003 / 004005
resourceName 名称
photoFileUrl 主图/头像 URL
affiliatedUnit 隶属单位
contactPhone 联系电话
introduction 介绍
detailAddress 详细地址
serviceStartTime / serviceEndTime 服务时段 HH:mm
serviceArea 服务区域
feeStandard 收费标准
serviceWeekdays 服务周日 17,逗号分隔
maxDailyAppointments 单日最大预约数(机构常见有值)
expertRating 专家评分(仅专家)
sysUserId / assignedLoginName 已分配账号信息
publishTime 发布时间

排序:publish_time 降序。


4. 专家历史评价

GET /app/bookingService/expert/{expertResourceId}/reviews

参数 必填 说明
expertResourceId 路径:专家资源 id004005
pageNum 页码,默认 1
pageSize 每页条数,默认 10,最大 50

响应 rows[]

字段 说明
reviewerName 评价人
reviewTime 评价时间
punctualityScore 到场准时(1~5)
attitudeScore 服务态度(1~5)
guidanceScore 指导效果(1~5)
summary 综合评价

reviewTime 倒序。


5. 所选日期是否已预约

GET /app/bookingService/appointment/booked

用于资料页选择预约日期后,判断当前登录用户在该服务方、该日是否已有有效预约。

参数 必填 说明
providerType 1 兽医 / 2 机构 / 3 专家
providerId 服务方资源 id(与列表 id 一致)
appointDate yyyy-MM-dd

响应 data

字段 类型 说明
booked boolean true 表示当日已有有效预约

有效预约create_by 为当前用户,且 status 不为 2(已拒绝)、3(已取消)。


6. 提交预约

POST /app/bookingService/appointment

Body(JSON)

字段 必填 说明
resourceType 004001 / 004005 / 004003
resourceId 资源 id
appointDate yyyy-MM-dd
appointeeName 预约人
contactPhone 手机号
timeSlot 二选一 08:00~10:00
timeStart / timeEnd 二选一 HH:mm
serviceAddress 服务地址
serviceRequirement 服务需求

响应 data:新建预约主键 id

校验

  • 资源须在视图中存在且已发布;
  • 预约日须在 serviceWeekdays 内(有配置时);
  • 机构且配置了 maxDailyAppointments 时,当日有效预约数(非已拒绝/已取消)未满。

失败示例:「预约对象不存在或未发布」「所选日期不在服务日内」「该机构当日预约已满」。


7. 界面参考

doc/app/预约服务/Snipaste_2026-05-24_10-52-44.jpg
doc/app/预约服务/Snipaste_2026-05-24_13-55-00.jpg
doc/app/预约服务/Snipaste_2026-05-24_13-56-00.jpg

(专家评价样式可参考 doc/app/在线问诊/ 下星级展示图。)