# 移动端面试邀约删除接口 ## 1. 接口说明 求职者在移动端删除自己收到的面试邀约。接口同时支持单个删除和批量删除;服务端根据登录 Token 自动识别当前用户,客户端不需要也不能传递 `userId`。 删除采用逻辑删除:记录会被标记为已删除,后续调用面试邀约列表接口时不会再返回该记录。 ## 2. 接口地址 `DELETE /app/interview/{ids}` ## 3. 鉴权 请求头需携带已登录移动端用户的 Token: ```http Authorization: Bearer <移动端登录 Token> ``` 未登录时,接口返回业务码 `500` 和提示信息“未登录”。 ## 4. 路径参数 | 参数名 | 位置 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | --- | | ids | Path | Long / Long[] | 是 | 面试邀约 ID。单个 ID 直接传递;批量 ID 使用英文逗号 `,` 分隔。 | ## 5. 请求示例 ### 5.1 删除单个面试邀约 ```http DELETE /app/interview/12 Authorization: Bearer <移动端登录 Token> ``` ### 5.2 批量删除面试邀约 ```http DELETE /app/interview/12,13,14 Authorization: Bearer <移动端登录 Token> ``` ### 5.3 cURL 示例 ```bash curl -X DELETE "https://<后端地址>/app/interview/12,13,14" \ -H "Authorization: Bearer <移动端登录 Token>" ``` ## 6. 成功响应 `data` 为实际删除的面试邀约数量。 ```json { "code": 200, "msg": "操作成功", "data": 3 } ``` ## 7. 失败响应 ### 7.1 未登录 ```json { "code": 500, "msg": "未登录" } ``` ### 7.2 没有可删除的邀约 当全部 ID 不存在、已删除,或均不属于当前登录用户时,实际删除数量为 `0`,接口返回: ```json { "code": 500, "msg": "操作失败" } ``` ## 8. 删除规则 1. 服务端只会删除 `id` 在请求参数内且 `user_id` 等于当前登录用户 ID 的记录。 2. 传入他人的面试邀约 ID 不会删除他人的数据。 3. 批量请求中同时包含本人和他人的邀约时,仅删除本人的记录;成功响应中的 `data` 是实际删除数量,不会逐条返回未删除 ID 的原因。 4. 删除为逻辑删除,记录的 `del_flag` 更新为已删除标识,移动端列表 `GET /app/interview/list` 不再展示该记录。 5. 前端收到 `code: 200` 后应刷新面试邀约列表;若需要确保全部选中记录都已删除,可将响应中的 `data` 与本次提交的 ID 数量进行比较。