1. 导出接口独立
建设部
  • 全流程统计
    • 本月扣分
    • 全流程统计
      GET
    • 建设交付周期扣分
      POST
  • 仪表盘(dashboard)
    • 代办数量
      GET
    • 代办详情
      GET
    • 立项
      GET
    • 交付
      GET
    • 签单
      GET
    • 整体交付及时性数据
      POST
    • 周报数据
      GET
  • 项目进度
    • get_project_progress
      GET
    • calculate_project_latest_delivery
      POST
    • save_project_progress
      POST
    • getProjectById
      POST
  • 用户
    • 用户登录
      POST
    • 用户注册
      POST
    • 修改密码
      POST
    • 手机号登录
      POST
    • 用户名密码登录(新版)
      POST
    • 发送手机登录验证码
      POST
    • 获取用户信息
      GET
    • 获取用户列表
      GET
    • 删除用户
      DELETE
    • 根据主键更新用户信息
      PUT
  • 项目管理
    • 项目管理
    • 批量导入
    • getProjectById
    • check_order_id_unique
    • order_id_suggestions
    • update.wf.phase8_beizhu
  • 导出接口独立
    • 项目导出(参数和项目列表一致)
      POST
    • 导出状态查询接口
      GET
    • 导出服务健康状态
      GET
  • socket.io
  • 项目列表
    • project_list
    • 用于下拉筛选选项
    • 批量替换
  • statistics
    • get_overall_statistics
    • district_operator_delivery_stats
  • 操作日志
    • auditlog_list
  • 管理员工具
    • excel_upload_and_process
    • excel_upload_and_process Copy
  • 申诉审核
    • 代办
      • 区县签单审核
      • 建设交付审核
    • 提交项目阻工申诉
    • 获取申诉列表
    • 获取申诉详情
    • 审批申诉 (批准)
    • 审批申诉 (驳回)
    • 取消申诉
    • 获取审批人候选列表(合并管理员和领导)
  • 免费节假日api
    GET
  • 数据模型
    • Schemas
      • CalculateQuoteDetailsInput
      • DistrictOverallMetrics
      • CalculateQuoteDetailsResponse
      • CompanyOverallMetrics
      • DeliveryOverallData
      • DistrictTimelinessMetrics
      • CompanyTimelinessMetrics
      • DeliveryTimelinessData
  1. 导出接口独立

项目导出(参数和项目列表一致)

开发中
POST
/api/project/export

导出接口 API 文档#

POST /api/project/export

1. 请求说明#

请求头(Headers)#
字段必填说明
Authorization是认证 Token,格式:Bearer <token> 或直接 <token>
请求体(Body)#
{
  "page": 1,
  "pageSize": 100,
  "filters": { /* 项目筛选条件 */ }
}
注:具体字段根据业务需求调整。

2. 响应说明#

成功响应(HTTP 200)#
{
  "message": "项目数:50,填入模板成功",
  "output": "/var/www/exports/projects_20240520.xlsx",
  "filename": "projects_20240520.xlsx",
  "downloadUrl": "https://api.example.com/exports/projects_20240520.xlsx?download=1&filename=projects_20240520.xlsx"
}
字段类型说明
messagestring导出结果描述
outputstring文件在服务器上的绝对路径(仅调试用,前端无需处理)
filenamestring生成的文件名(用于前端显示)
downloadUrlstring前端直接使用此 URL 触发文件下载(已配置 Nginx 强制下载)
冲突响应(HTTP 423)#
{
  "error": "系统繁忙,请稍后再试",
  "retryAfter": 15000
}
字段类型说明
retryAfternumber剩余等待时间(毫秒),建议前端显示倒计时
错误响应(HTTP 401/500)#
// 401 未授权
{ "error": "缺少 Authorization 头" }

// 500 服务器错误
{ "error": "导出过程中发生错误:<具体错误信息>" }

3. 前端调用示例#

JavaScript(Fetch API)#
Nginx 配置参考#

4. 状态管理逻辑#

场景系统行为
导出开始设置全局锁 isExporting=true,记录开始时间
导出完成/失败通过 on-finished 自动解锁,触发 GC(内存回收)
并发请求返回 HTTP 423 和剩余等待时间,前端轮询 /export/status 或显示倒计时

5. 注意事项#

1.
文件下载
直接使用返回的 downloadUrl,不要拼接路径(避免跨域或路径错误)。
如果浏览器拦截下载,需引导用户手动点击 <a href="downloadUrl">下载</a>。
2.
授权安全
所有请求必须携带有效的 Authorization 头。
3.
大文件处理
如果导出文件较大(>50MB),建议分片导出或使用 WebSocket 推送进度。
4.
调试信息
output 字段仅用于后端日志,前端无需解析。

请求参数

Authorization
在 header 添加参数
Authorization
示例:
Authorization: ********************
Body 参数application/json

示例
{
    "page": 1,
    "pageSize": 50,
    "keyword": "",
    "filters": [
        {
            "field": "district",
            "value": [
                "岳麓区"
            ],
            "type": "string"
        }
    ]
}

请求示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/project/export' \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "page": 1,
    "pageSize": 50,
    "keyword": "",
    "filters": [
        {
            "field": "district",
            "value": [
                "岳麓区"
            ],
            "type": "string"
        }
    ]
}'

返回响应

🟢200成功
application/json
Body

示例
{
    "message": "项目数:234,填入模板成功",
    "output": "exports/export_250702_0828_00234items.xlsx",
    "filename": "export_250702_0828_00234items.xlsx",
    "downloadUrl": "https://dev.tieta.dongqianshan.com/exports/export_250702_0828_00234items.xlsx?download=1&filename=export_250702_0828_00234items.xlsx"
}
修改于 2025-07-02 00:25:37
上一页
update.wf.phase8_beizhu
下一页
导出状态查询接口
Built with