前端对接分销开票

花店开票列表新增花材款

运营后台花店开票列表:开票类型新增花材款(按申请单聚合一行),按类型区分操作按钮,新增花材款关联供应商及订单弹窗

端
运营后台
后端服务
admin
状态
已上测
测试分支
bulky-test/admin
更新
2026-10-28
接口数
4

Markdown 原文(给 AI 用):https://doc.xfun.fun/partner-invoice-admin-flower-api.md

总览

运营后台「花店开票列表」原来只展示平台项(供应链服务费 / 干线物流费 / 平台服务费),本次新增 花材款:开票类型筛选加「花材款」,列表里花材款 按申请单聚合成一行(一行 = 一次申请里所有供应商的花材款),点操作按钮弹出各供应商明细,再下钻看单个供应商的关联订单和发票。

#接口用途何时调用
①POST /invoice/manage/partnerPlatform/list花店开票列表进入页面、翻页、切筛选
②POST /invoice/manage/partnerPlatform/flower/supplier/list花材款关联供应商及订单花材款行点「查看供应商及关联订单」
③POST /invoice/manage/partnerPlatform/order/list关联订单服务费行点「关联订单」;花材款弹窗里点「查看关联订单」
④POST /invoice/manage/partnerPlatform/sendNo/list关联发货单物流费行点「关联发货单」(不变)

通用约定

枚举

枚举取值
invoiceItemType 开票类型0 花材款 · 1 供应链服务费 · 2 干线物流费 · 3 平台服务费
partnerId 所属平台0 寻梦批发 · 3 优花速达 · 140 繁花惠
status 开票状态0 开票中 · 1 已开票 · 2 已逾期 · 3 已撤销

页面与接口对应

页面元素做法
开票类型筛选「全部」不传 invoiceItemType;「花材款」传 0;其余传 1 / 2 / 3
列表行类型标签用 invoiceItemTypeDesc
「供应商 N 家 · 订单 M 笔」supplierCount、orderCount;平台项 supplierCount 固定 1
操作栏(按 invoiceItemType 区分)0 花材款 →「查看供应商及关联订单」调 ②,传 applicationId;2 物流费 →「关联发货单」调 ④,传 id;1 / 3 服务费 →「关联订单」调 ③,传 id
花材款弹窗标题区② 返回的 applicationNo、supplierCount、orderCount
弹窗供应商行每行都有「查看关联订单」,调 ③ 传该行 id;invoiceUrl 有值(已开票)时再加「查看发票」,直接打开该 URL
关联订单弹窗③ 返回的订单号、场次、金额
重要

花材款行的 id 为 null,弹窗必须用 applicationId 调 ②;不要拿 id 调 ③ / ④。

接口

POST/invoice/manage/partnerPlatform/list花店开票列表

变更:invoiceItemType 支持 0 花材款;不传时花材款与平台项一起返回;响应新增 applicationId、supplierCount

请求参数

字段类型必填说明
indexInteger可选页码,从 1 开始
sizeInteger可选每页条数
searchCountBoolean可选是否统计总数
invoiceItemTypeInteger可选开票类型,见枚举 invoiceItemType;不传为全部(含花材款)
partnerIdInteger可选所属平台,见枚举 partnerId;不传为全部
statusInteger可选开票状态,见枚举 status;不传为全部
requestNoString可选申请编号,精确;花材款可输申请单号(INV 开头)或其下任一供应商票据编号(REQ 开头)
titleNameString可选发票抬头,模糊
taxNumberString可选税号,精确
purchaserPhoneString可选花店手机号,精确
createTimeStartLocalDateTime可选申请时间起
createTimeEndLocalDateTime可选申请时间止

请求示例

json
{ "index": 1, "size": 20, "searchCount": true, "invoiceItemType": 0, "partnerId": 140 }

响应

字段类型说明
invoicingTotalAmountBigDecimal开票中总金额
invoicedTotalAmountBigDecimal已开票总金额
overdueTotalAmountBigDecimal已逾期总金额
totalLong总条数
records[].idLong票据 ID;花材款行为 null
records[].applicationIdLong新增 申请单 ID;花材款行调 ② 用
records[].requestNoString申请编号;花材款行为申请单号
records[].invoiceItemTypeInteger开票类型,见枚举 invoiceItemType
records[].invoiceItemTypeDescString开票类型文案
records[].partnerIdInteger所属平台,见枚举 partnerId
records[].platformNameString寻梦批发 / 优花速达 / 繁花惠
records[].purchaserIdLong花店 ID
records[].purchaserNameString花店名称
records[].purchaserPhoneString花店手机号
records[].titleNameString发票抬头
records[].taxNumberString税号
records[].requestAmountBigDecimal申请开票金额
records[].supplierCountInteger新增 供应商数;平台项固定 1
records[].orderCountInteger订单数(去重)
records[].statusInteger开票状态,见枚举 status
records[].statusDescString状态文案
records[].invoiceUrlString发票 URL;花材款行为 null,在 ② 里按供应商取
records[].createTimeLocalDateTime申请时间
records[].uploadTimeLocalDateTime上传时间;花材款行为各供应商最近一次上传时间
records[].deadlineLocalDateTime开票截止时间

响应示例

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "index": 1, "size": 20, "total": 2,
    "invoicingTotalAmount": 512.00, "invoicedTotalAmount": 386.50, "overdueTotalAmount": 0.00,
    "records": [
      {
        "id": null, "applicationId": 84, "requestNo": "INV202609301091915567936",
        "invoiceItemType": 0, "invoiceItemTypeDesc": "花材款",
        "partnerId": 140, "platformName": "繁花惠",
        "purchaserId": 999102, "purchaserName": "花语花坊", "purchaserPhone": "18758231160",
        "titleName": "花语花坊(昆明)有限公司", "taxNumber": "91530100MA6P8K2X7L",
        "requestAmount": 386.50, "supplierCount": 3, "orderCount": 12,
        "status": 1, "statusDesc": "已开票", "invoiceUrl": null,
        "createTime": "2026-09-28 09:12:33", "uploadTime": "2026-09-28 09:20:11", "deadline": "2026-10-28 09:12:30"
      },
      {
        "id": 192, "applicationId": 84, "requestNo": "REQ0220260930999025876041",
        "invoiceItemType": 1, "invoiceItemTypeDesc": "供应链服务费",
        "partnerId": 140, "platformName": "繁花惠",
        "purchaserId": 999102, "purchaserName": "花语花坊", "purchaserPhone": "18758231160",
        "titleName": "花语花坊(昆明)有限公司", "taxNumber": "91530100MA6P8K2X7L",
        "requestAmount": 23.00, "supplierCount": 1, "orderCount": 7,
        "status": 0, "statusDesc": "开票中", "invoiceUrl": null,
        "createTime": "2026-09-28 09:12:33", "uploadTime": null, "deadline": "2026-10-28 09:12:30"
      }
    ]
  }
}

错误码 / 失败文案

msg触发场景前端处理
开票类型参数错误invoiceItemType 不在 0~3检查传参
开始时间不能大于结束时间时间区间颠倒toast

POST/invoice/manage/partnerPlatform/flower/supplier/list花材款关联供应商及订单

新增

花材款行弹窗。列出该申请单下每个供应商的花材款票据;已撤销、已转代开的不展示(整单撤销时展示已撤销的)。

请求参数

字段类型必填说明
idLong必填列表 records[].applicationId

请求示例

json
{ "id": 84 }

响应

字段类型说明
applicationNoString申请单号
supplierCountInteger供应商数
orderCountInteger订单数(去重)
supplierList[].idLong该供应商票据 ID,「查看关联订单」调 ③ 传此值
supplierList[].supplierIdLong供应商 ID
supplierList[].supplierNameString供应商名称
supplierList[].amountBigDecimal待开票金额
supplierList[].orderCountInteger订单数
supplierList[].statusInteger开票状态,见枚举 status
supplierList[].statusDescString状态文案
supplierList[].invoiceUrlString发票 URL,仅已开票时有值;有值才展示「查看发票」

响应示例

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "applicationNo": "INV202609301091915567936",
    "supplierCount": 3,
    "orderCount": 12,
    "supplierList": [
      { "id": 189, "supplierId": 25563, "supplierName": "昆明斗南花卉产业有限公司", "amount": 186.00, "orderCount": 5, "status": 1, "statusDesc": "已开票", "invoiceUrl": "https://xunmeng-oss.oss-cn-hangzhou.aliyuncs.com/invoice/189.pdf" },
      { "id": 190, "supplierId": 18820, "supplierName": "云南花语供应链有限公司", "amount": 128.50, "orderCount": 4, "status": 0, "statusDesc": "开票中", "invoiceUrl": null },
      { "id": 191, "supplierId": 30215, "supplierName": "广州花材集采中心", "amount": 72.00, "orderCount": 3, "status": 0, "statusDesc": "开票中", "invoiceUrl": null }
    ]
  }
}

错误码 / 失败文案

msg触发场景前端处理
信息不存在申请单 ID 不存在(多半是误传了 id 而不是 applicationId)检查传参

POST/invoice/manage/partnerPlatform/order/list关联订单

变更:原来只支持供应链服务费、平台服务费,现在也支持花材款单个供应商的票据

请求参数

字段类型必填说明
idLong必填票据 ID:服务费行用列表 records[].id,花材款用 ② 的 supplierList[].id

请求示例

json
{ "id": 189 }

响应

字段类型说明
[].orderSnString订单编号
[].roundNoString场次
[].amountBigDecimal该订单对应金额

响应示例

json
{
  "code": 0,
  "msg": "success",
  "data": [
    { "orderSn": "20260722999025682363", "roundNo": "2026-07-22", "amount": 2.00 },
    { "orderSn": "20260810999025735072", "roundNo": "2026-08-11", "amount": 7.00 }
  ]
}

错误码 / 失败文案

msg触发场景前端处理
该开票记录不是花材款/供应链服务费/平台服务费类型传了物流费票据 ID物流费改调 ④
信息不存在票据 ID 不存在检查传参

POST/invoice/manage/partnerPlatform/sendNo/list关联发货单

不变

仅物流费行(invoiceItemType = 2)使用,传列表 records[].id。返回 [].sendNo 发货单号、[].roundNo 场次、[].expressName 物流商(多个逗号分隔)、[].amount 该发货单物流费合计、[].orderCount 订单数。

联调注意

注意

花材款行和平台项行的 id 含义不同:花材款行 id 为 null、用 applicationId;弹窗里的供应商行 id 才是票据 ID。按钮取值别混用。