html: embed_local_images: false embed_svg: true offline: false toc: true
print_background: true export_on_save:
第五步:签合同、生活照、工作照、个人简介
graph TD
A[用户端申请成为技师] --> B[客服登录后台管理进行审核]
B -->|审核中| C[申请页面显示正在审核]
B -->|拒绝| D[可以修改个人信息重新申请]
B -->|通过| E[申请页面变成切换身份进入技��端]
E --> F[进入技师端]
F --> G[支付宝实名认证]
G --> H[上传按摩证、营业执照、健康证、身份证正反面、手持身份证,上传生活照、工作照、个人简介]
H --> I[客服再次对技师进行审核]
I --> J[签合同]
J --> Z[初始化项目设置、接单设置默认值,后台]
技师:消息通知,消息通知静态页
sequenceDiagram
participant Alice
participant John
link Alice: Dashboard @ https://dashboard.contoso.com/alice
link Alice: Wiki @ https://wiki.contoso.com/alice
link John: Dashboard @ https://dashboard.contoso.com/john
link John: Wiki @ https://wiki.contoso.com/john
Alice->>John: Hello John, how are you?
John-->>Alice: Great!
Alice-)John: See you later!
sequenceDiagram
participant 用户
participant 后台
participant 技师
autonumber
用户->>+后台: 选项目,点下单
后台->>后台: 1创建抢单订单
后台-->>用户: 订单创建成功
后台->>技师: 显示抢单列表(通过抢单逻辑)
技师->>后台: 点击立即抢单,作出提示
后台->>后台: 2-技师抢单创建抢单池
用户->>后台: 实时显示所有的抢单技师,点击某个技师
后台->>后台: 3.用户反选技师
后台-->>用户: 订单反选成功
用户->>后台: 复用支付流程
后台->>技师: 消息通知
参数:
- user_id, project_id, address_id
涉及表和关键列:
订单表:service_order
必填字段:id,order_sn, user_id, user_name,mobile, address,real_address,address_lng,address_lat, adcode, project_id, project_name, project_sub_title,project_icon,service_price, type,status, created_at, updated_at
订单类型字段: type
0: 正常订单
1: 抢单订单
状态机字段:status
0: 待抢单
用户表: member_user
用户地址表: member_address
项目表: service_project
后台逻辑:
参数:
涉及表和关键列:
后台逻辑:
参数:
涉及表和关键列:
后台逻辑:
后台:订单状态改为 服务结束 已撤离
sequenceDiagram
participant 用户
participant 后台
participant 技师
技师->>后台: 技师接单成功
后台->>后台: 1. 技师接单
技师-->>技师: 显示 开始出发
技师->>后台: 点开始出发
后台->>后台: 记录技师开始出发时间,经纬度以及当前位置,订单状态变为已出发[^1]
后台-->>用户: 订单状态变为已出发
技师->>后台: 点击已到达,并拍照
后台->>后台: 记录技师经纬度和到达时间,订单状态改为已到达[^2]
后台-->>用户: 订单状态改为已到达
用户-->>用户: 显示状态已到达(显示二维码页面)
技师->>用户: 扫用户的二维码
技师->>后台: 扫码发起开始服务请求
后台->>后台: 订单状态改为 服务中[^3]
用户-->>用户: 显示服务倒计时(自动跳转服务详情页面)
后台-->>用户: 订单状态改为 服务中
用户->>后台: 显示倒计时,点击结束订单
用户->>后台: 在结束订单页面,点击"确认技师离开"
后台-->>技师: 收到订单结束通知
技师->>后台: 拍照,点确认撤离
后台->>后台: 订单状态改为 服务结束[^4]
技师: 撤离,拍照
sequenceDiagram
participant 用户
participant 后台
participant 技师
用户->>后台: 指定技师下单,点击立即结算
后台->>后台: 1. 创建订单
后台-->>用户: 订单创建成功
技师->>后台: 确认接单
后台->>后台: 2. 改变订单状态为已接单
后台-->>用户: 订单状态变为已接单
技师->>后台: 开始出发
后台->>后台: 3. 改变订单状态为已出发
后台-->>用户: 订单状态变为已出发
技师->>后台: 已到达,拍照
后台->>后台: 4. 改变订单状态为已到达
后台-->>用户: 订单状态变为已到达
用户->>用户: 已到达,显示二维码
技师->>用户: 扫描二维码
后台->>后台: 5. 订单状态改为服务中
后台-->>用户: 订单状态变为服务中
后台-->>技师: 订单状态变为服务中
用户->>后台: 第一种:结束订单
后台->>后台: 6. 订单改为服务结束
后台-->>技师: 订单改为服务结束
后台-->>用户: 订单状态变为服务结束
用户->>用户: 确认技师离开
用户->>后台: 技师离开
后台->>后台: 7.订单更改状态为技师离开
技师->>后台: 点击撤离,拍照
后台->>后台: 8. 第二种:服务时间结束
后台-->>用户: 服务结束
后台-->>技师: 服务结束
用户->>后台: 确认技师离开
技师->>后台: 撤离,拍照
后台->>后台: 9. 技师撤离
后台-->>用户: 技师撤离 订单完成
后台-->>技师: 技师撤离 订单完成
参数:
- user_id, project_id, address_id, coach_id, pay_type, is_balance
- user_id 通过 Auth::id() 获取
涉及表和关键列:
订单表:service_order
必填字段:id,order_sn, user_id, user_name,mobile, address,real_address,address_lng,address_lat, adcode, project_id, project_name, project_sub_title,project_icon,service_price, coach_id, pay_type, type,status, created_at, updated_at
订单类型字段: type
0: 正常订单
1: 抢单订单
状态机字段:status
0: 待抢单
支付类型字段:pay_type
0: 余额支付
1: 微信支付
2: 支付宝支付
订单类型:type
0:常规订单
1:抢单订单
用户表: member_user
用户地址表: member_address
项目表: service_project
技师表:coach_users
后台逻辑:
通过已上查询的数据,创建订单数据,要求:
指定技师
flowchart TD
A[开始] --> B[获取用户数据]
B --> C{用户状态正常?}
C -->|是| D[获取地址数据]
C -->|否| Z[结束]
D --> E[获取项目数据]
E --> F{项目状态正常?}
F -->|是| G[获取技师数据]
F -->|否| Z
G --> H{技师状态正常?}
H -->|是| I[创建订单]
H -->|否| Z
I --> J{支付类型}
J -->|余额支付| K{余额足够?}
J -->|微信支付或支付宝支付| M[订单状态: 未支付]
K -->|是| L[订单状态: 已支付]
K -->|否| M
L --> N[指定技师]
M --> N
N --> O[发送异步抢单通知]
O --> Z[结束]
发送异步抢单通知(比如对接极光推送)
参数:
涉及表和关键列:
后台逻辑:
发送异步抢单通知(比如对接极光推送)
flowchart TD
A[开始] --> B[通过编号查订单]
B --> C{订单状态为已支付?}
C -->|是| D{订单有指派技师?}
C -->|否| Z[结束]
D -->|是| E{技师用户编号匹配?}
D -->|否| Z
E -->|是| F[通过用户编号查技师]
E -->|否| Z
F --> G{技师状态为正常?}
G -->|是| H[修改订单数据]
G -->|否| Z
H --> I[订单状态改为已接单]
I --> J[发送异步抢单通知]
J --> Z[结束]
参数:
涉及表和关键列:
后台逻辑:
发送异步抢单通知(比如对接极光推送)
flowchart TD
A[开始] --> B[通过编号查订单]
B --> C{订单状态为已接单?}
C -->|是| D{订单有指派技师?}
C -->|否| Z[结束]
D -->|是| E{技师用户编号匹配?}
D -->|否| Z
E -->|是| F[通过用户编号查技师]
E -->|否| Z
F --> G{技师状态为正常?}
G -->|是| H[修改订单数据]
G -->|否| Z
H --> I[订单状态改为已出发]
I --> J[发送异步抢单通知]
J --> Z[结束]
参数:
后台逻辑:
参数:
后台逻辑:
参数:
后台逻辑:
参数:
发送异步抢单通知(比如对接极光推送)
flowchart TD
A[开始] --> B[通过编号及用户编号查订单]
B --> C{订单状态为服务结束?}
C -->|是| D{订单有指派技师?}
C -->|否| Z[结束]
D -->|是| E[修改订单数据]
D -->|否| Z
E --> F[订单用户确认离开]
F --> G[订单用户确认离开时间]
G --> H[发送异步抢单通知]
H --> Z[结束]
参数:
后台逻辑:
参数:
技师通过平台接单,到用户指定地点提供服务
- 如果订单上的用户是某个渠道(技师、店铺、业务员等)推广来的,则渠道获得订单项目金额(不含优惠、路费)的百分之几,推广最大2级,第一级渠道获得20%,第二级渠道获得10%
- 如果订单上的技师是由推荐渠道(店铺、业务员等)推荐的,则推荐渠道获得订单项目金额(不含优惠、路费)的1%。如果推荐渠道为技师,则渠道获得订单金额(不含优惠、路费)的3%,上限为1000元封顶
- 接单技师作为服务提供者,获得订单项目金额(不含优惠)的50%至55%,路费另算,技师获得90%,平台10%
用户通过平台下单,选择店铺中的技师,或直接选择店铺服务项目,到店消费
- 用户到店核销完成,店铺获得80%,店铺线下与技师分帐
- 如果用户是某个渠道(技师、店铺、业务员等)推广来的,则渠道获得与店铺分帐后的20%中的10%
救急订单,调技师去店铺,用户到店消费,店铺替到店客户下单
如果店铺技师不足,则店铺在平台正常下单,且技师为平台技师(非店铺自有技师),店铺创建的订单可设置报销路费或不报销路费,技师到店核销后,平台从店铺余额中扣除此订单服务费价格的10%
flowchart TD
A[技师上门] --> B[用户是渠道推广]
B --> C{推广级别}
C -->|第一级| D[渠道获得20%]
C -->|第二级| E[渠道获得10%]
A --> F[技师由推荐渠道推荐]
F --> G{推荐渠道类型}
G -->|店铺/业务员| H[推荐渠道获得1%]
G -->|技师| I[推荐渠道获得3% 上限1000元]
A --> J[接单技师]
J --> K[技师获得50%至55%]
K --> L[路费技师获得90% 平台10%]
flowchart TD
M[用户到店] --> N[订单有店铺]
N --> O[店铺获得80%]
O --> P[店铺线下与技师分帐]
M --> Q[用户是渠道推广]
Q --> R[渠道获得店铺分帐后20%中的10%]
flowchart TD
S[平台技师到店] --> T[店铺技师不足]
T --> U[店铺正常下单]
U --> V{路费设置}
V -->|报销| W[店铺订单核销后]
V -->|不报销| W
W --> X[平台从店铺余额中扣除10%]
字段名 | 类型 | 说明 |
---|---|---|
id | int | 主键 |
role | string | 角色 |
percentage | decimal | 分帐比例 |
algorithm | string | 分帐算法 |
created_at | datetime | 创建时间 |
updated_at | datetime | 更新时间 |
字段名 | 类型 | 说明 |
---|---|---|
id | int | 主键 |
order_id | int | 订单ID |
role | string | 角色 |
amount | decimal | 分帐金额 |
created_at | datetime | 创建时间 |
updated_at | datetime | 更新时间 |
@import "./下单流程图.md"
@import "./分帐及钱包todolist.md"