1.技师列表-不指定项目(用户端)
参数:
- user_id, adcode, lng, lat
- user_id 通过 Auth::id() 获取
涉及表和关键列:
- 技师:technician_users
- 字段:id, nickname, mobile, avatar, status
- 地区编号字段:adcode
- 状态字段:status
- 0: 禁用
- 1: 正常
- 技师定位:technician_position
- 字段:id, technician_id, adcode, lng, lat
- 经度字段:lng
- 纬度字段:lat
后台逻辑:
- 根据地区编号查询技师编号
- 返回技师列表
- 技师数据存在,并且技师状态为正常(status = 1)
2. 技师抢单(技师端)
参数:
- user_id, order_id, coach_id
- user_id 通过 Auth::id() 获取
涉及表和关键列:
- 抢单池:service_order_grab
- 必填字段:id, order_id, coach_id, status, created_at, updated_at
- 状态字段:status
- 0: 参与抢单
- 1: 抢单成功
- 2: 抢单失败
- 订单:service_order
- 必填字段:id,type,status
- 订单类型字段: type
- 0: 正常订单
- 1: 抢单订单
- 状态字段:status
- 0: 待抢单
- 技师:coach_users
- 字段:user_id, status
- 状态字段:status
- 0: 禁用
- 1: 正常
后台逻辑:
- 通过编号查订单,条件是:
- 订单数据存在,并且状态为待抢单
- 订单没有指派技师
- 订单类型为抢单订单
- 通过用户编号查技师,条件是:
- 通过以上数据,创建订单池,要求:
- 发送异步抢单通知(比如对接极光推送)
3. 用户反选技师(用户端)
参数:
- user_id, order_id, coach_id
- user_id 通过 Auth::id() 获取
涉及表和关键列:
- 抢单池:service_order_grab_pool
- 必填字段:id, order_id, coach_id, status, created_at, updated_at
- 状态字段:status
- 0: 参与抢单
- 1: 抢单成功
- 2: 抢单失败
- 订单:service_order
- 必填字段:id,type,status
- 订单类型字段: type
- 0: 正常订单
- 1: 抢单订单
- 状态字段:status
- 0: 待抢单
后台逻辑:
- 通过编号查订单,条件是:
- 订单数据存在,并且状态为待抢单
- 订单没有指派技师
- 订单类型为抢单订单
- 通过编号查技师,条件是:
- 通过以上数据,修改订单池,要求:
- 发送异步抢单通知(比如对接极光推送)