DaoSales 培训手册

业务场景剧本

6 条跨角色业务流

6 场景总览

按角色视角看单个模块很好学,但真实业务是跨角色接力。下面 6 条场景把 10 个角色串成一张网——每一步落在哪个角色头上、接力到下一步需要传什么字段、哪里容易掉链子,一次性看清。

# 场景名 参与角色 主要单据 预期周期
1 标准成单流 销售 / 跟单 / 库管 /(可选)QC / 物流 inquiry → quote → sales_order → delivery_note → invoice 2-6 周
2 定制家具项目流 设计师 / 销售 / 采购 / PMC(跟单)/ 库管 / QC / 物流 project → design_fee → drawings → bom → split_order_item → purchase_order → production → delivery 6-16 周
3 回款流 销售 / 出纳 / 会计 invoice → bank_transaction → payment → journal_entry 1-15 天
4 采购付款流 采购 / 库管 / QC / 出纳 / 会计 rfq → supplier_quotation → purchase_order → goods_receipt → purchase_invoice → payment 2-8 周
5 月结流 会计 / 财务经理 /(协同)出纳 / 跟单 / 物流 fiscal_periods → fx_revaluation → closing → reports 月末 2-5 个工作日
6 报销审批流 员工 / 部门经理 / 财务经理 / 出纳 / 会计 expense_claim → expense_approvals → payment → journal_entry 3-10 天

每条场景按「触发 → 操作 → 产出」写 4-8 个步骤;步骤末尾的「回到角色手册」链接跳回对应角色的 Quickstart 章节——培训时对照看,业务老师讲场景、角色手册讲细节。

场景 1:标准成单流

参与角色:销售、跟单、库管(可选 QC / 物流报关)。典型周期:询盘到回款 2-6 周。链路:客户询价 → 报价 → 订单 → 生产通知 → 发货 → 开票 → 收款。

步骤 1:销售录入询盘并生成报价(销售)

触发:客户邮件或企微发来询价。产出:询盘记录 + 报价草稿(SQ-YYYYMM-)。

  1. /dashboard/inquiries 新建询盘;若是 PDF/Excel 附件,点 AI 解析自动抽字段。
  2. 询盘详情点「转报价」,把 sourceInquiryId 带入新报价。
  3. 报价里选客户、币种、有效期;逐行添加产品变体、数量、单价。
  4. 多币种确认汇率;底部填 Incoterm / 起运港 / 目的港。
  5. 超折扣权限点「送审」走审批;否则直接保存并「发送」给客户。
scenarios/scene-1-inquiry-to-quote.jpg

下游接力:见步骤 2(客户确认 → 转订单)。回到销售手册 Quickstart 2.1-2.2

步骤 2:销售把报价转销售订单(销售 → 跟单)

触发:客户签回报价或明确付定金意愿,报价已 approved产出:销售订单(SO-YYYYMM-)+ 付款里程碑 + 跟单待排产任务。

  1. 报价详情勾选要转的明细行,点「生成销售订单」。
  2. 弹窗里确认预计发货日;项目订单填项目 ID;确认客户、币种、明细。
  3. 订单生成后,系统自动按付款条款模板拆出里程碑(如 30-40-30)。
  4. 原报价状态变 converted;机会(CRM)自动置 won;跟单在订单列表「待排产」Tab 看到新单。
scenarios/scene-1-quote-to-order.jpg

下游接力:见步骤 3(跟单排产 + 销售收定金)。回到销售手册 Quickstart 2.3-2.4跟单手册 Quickstart

步骤 3:销售收定金 + 跟单排产(销售 + 跟单)

触发:客户银行打款、水单到手,生产车间排期结束。产出payments 新增一笔定金;订单进入 processing / confirmed 可发货。

  1. 销售在订单「付款」Tab 录入收款:付款类型 deposit、付款方式、银行流水号、到账日。
  2. 跟单在订单列表切到「待排产」,按 expected_ship_date 排序,与 PMC 确认产线。
  3. 订单推进到 confirmed / processing,库管收到备货任务。

下游接力:见步骤 4(库管备货 + 跟单建 DN)。回到销售手册 Quickstart 2.5跟单手册 Quickstart

步骤 4:跟单建发货单 + 库管备货出库(跟单 + 库管)

触发:生产完成 / 外协货到仓,客户确认发货日。产出:发货单(DN-)草稿 → 已提交 + 库存出库流水。

  1. 跟单在订单详情点「创建发货单」;填出货仓、发货日、承运商、运单号、收货地址、毛重 / 净重。
  2. 按订单行拣货,系统按可发余量校验;不足的行退回销售补报价或和客户沟通分批。
  3. 跟单点「提交」,库管在仓库模块收到出库任务,按批次 / 序列号拣货,记入 inventory_movements
  4. 物流报关(如走外贸)基于发货单建装箱单 / Shipment;国内直接走快递即可。

下游接力:见步骤 5(客户签收 + 开票)。回到跟单手册 Quickstart 2.3库管手册 Quickstart物流手册 Quickstart

步骤 5:客户签收 + 开具发票(跟单 / 销售 → 会计)

触发:客户签收回执到手或承运商派送成功。产出:发货单 delivered;发票(INV-)或国内增值税申请。

  1. 跟单 / 销售在发货单详情点「确认签收」,订单状态推进到 shipped / delivered
  2. 外贸开商业发票:已签收 DN 点「开具发票」,选 commercial;未收款客户选 proforma
  3. 国内增票:订单 VAT Tab 点「申请开票」,填购方名称、税号、税率;会计 / 开票员开完回填发票代码和号码。
  4. 发票推给客户,挂 AR;会计自动触发收入确认凭证。

下游接力:见步骤 6(收尾款)。回到销售手册 Quickstart 2.7会计手册 Quickstart

步骤 6:收尾款 + 对账核销(销售 / 出纳 / 会计)

触发:客户按发票汇尾款或按里程碑付款。产出:收款记录;发票 balance_due=0;银行对账匹配。

  1. 销售或出纳在订单「付款」Tab 录入尾款(final_payment);或出纳工作台扫银行回单入账。
  2. 出纳在应收列表核销到具体发票(FIFO 预填 + 手工微调);外币需填汇率。
  3. 会计在银行对账工作台把到账流水与发票付款匹配,variance=0 完成对账。
  4. 订单自动推进到 completed(如果发票全部结清 + 发货全部签收)。

下游接力:进入回款流(场景 3)细节。回到出纳手册 Quickstart 2.2会计手册 Quickstart

场景 2:定制家具项目流

参与角色:设计师、销售、采购、PMC(跟单)、库管、QC、物流。典型周期:6-16 周。关键差异:项目有独立 project_id,报价 / 订单 / 采购 / 发货 / 安装都绑项目;设计先行、BOM 驱动采购、拆单走不同生产路径(in_house / semi_outsource / full_outsource)。

步骤 1:设计师出图 + 客户付设计费(设计师)

触发:销售接到定制项目询盘,项目建档,客户要求先看设计。产出:草图 draft;设计费单(DF-)已收款。

  1. 设计师在 /dashboard/designs 点「新建设计」上传初版图纸,挂到对应项目。
  2. 创建设计费单:填金额、币种、关联项目;销售确认后发给客户。
  3. 客户付设计费后录收款,设计费单状态推进到 paid
  4. 设计师点「开始设计工作」,正式进入多轮送审 in_reviewrejected/approved
  5. 所有图 approved 后点「完成交付」,图纸归档。

下游接力:见步骤 2(建 BOM + 销售报价)。回到设计师手册 Quickstart 2.1-2.4

步骤 2:建产品 + BOM,销售带项目报价转单(设计师 + 销售 + 跟单)

触发:图纸确认,每个定制件需要在产品库落档以便走采购和生产。产出:产品 + BOM 齐套;销售订单带 projectId

  1. 设计师在 /dashboard/products 为每个定制件建产品,在 BOM Tab 挂材料(按用途 usage_type 标注主料 / 辅料 / 五金 等)。
  2. 设计师用「图纸分配」把每张图挂到对应 order_item / product,供生产调阅。
  3. 销售建报价时选产品变体,带 projectId;转订单弹窗里把项目 ID、预计发货日一并传给跟单。
  4. 跟单收到项目订单后,按 BOM 齐套情况决定是否先补料。

下游接力:见步骤 3(采购补料 + 订单拆单)。回到设计师手册 Quickstart 2.5销售手册 Quickstart 2.3跟单手册 Quickstart

步骤 3:采购按 BOM 补料 + 拆单走生产路径(采购 + 跟单)

触发:BOM 齐套检查发现缺料,或项目指定部分件外协。产出:采购订单(PO-);订单明细按生产路径拆单。

  1. 跟单或库管在销售订单详情点「生成采购单」(preparePOFromSO),系统按供应商分组输出 draft PO。
  2. 采购审核 PO 明细、价格、到货日,点「发送给供应商」。
  3. 跟单对订单行走拆单:部分自产(in_house)、半外协(semi_outsource)、全外协(full_outsource),每条子行独立排产。
  4. 自产部分进车间排产;外协部分发委外工单。
scenarios/scene-2-bom-to-po.jpg

下游接力:见步骤 4(QC 来料检验 + 库管收货)。回到采购手册 Quickstart 2.1跟单手册 Quickstart

步骤 4:板材到货 QC 抽检 + 库管批次入库(QC + 库管)

触发:外协板材或五金到厂,生成收货单 GR。产出:验收通过的批次入主库(active),不合格批次保持 held 或走退货。

  1. 库管在 /dashboard/purchasing/goods-receipts 验收 PO 到货,批次默认 held
  2. QC 扫批次号做抽检:色差、厚度、甲醛报告、尺寸;上传图片、记缺陷。
  3. 全合格 accepted → 整批放行进主库;部分合格 partial → 按 FIFO 拆出合格数量;整批不良 rejected → 批次保留 held 并创建 return_to_supplier 异常单。
  4. 项目批次强制不混批:颜色批次与已开料批次不一致时 QC 必须整批拒收。

下游接力:见步骤 5(生产完成 → 发货 → 物流)。回到 QC 手册 Quickstart 2.1-2.3库管手册 Quickstart

步骤 5:定制品装柜发货 + 设计费抵扣首款(物流 + 销售 + 会计)

触发:生产 + 自产 + 外协件全部入库齐套,客户确认发货。产出:多票装箱单(PL)+ Shipment;设计费抵扣订单首款。

  1. 跟单按订单拆单(split_order_id)分批建发货单;超规家具 PL 用 versionNumber 迭代(尺寸常变)。
  2. 物流创建装箱单录箱规、唛头(shipping_mark),缺唛头对话框会警告——定制品唛头常定制必须补。
  3. 多柜合一票 shipment:多次加集装箱,每柜独立 container_number / seal_number / loading_date
  4. 物流按「订舱 → 装柜 → 报关 → 离港 → 到港 → 派送」推进 Shipment 状态。
  5. 销售在订单详情点「设计费转订单首款」(convertFeeToOrderAction),抵扣金额从设计费单的「剩余可用」扣减。

下游接力:客户签收后回到场景 1 步骤 6(收尾款)。回到物流手册 Quickstart 2.1设计师手册 Quickstart 2.6会计手册 Quickstart

场景 3:回款流

参与角色:销售、出纳、会计。典型周期:1-15 天。链路:发票已开 → 客户打款 → 出纳登账 → 核销到发票 → 会计对账过账。多付款 / 跨币种收款有特殊分支。

步骤 1:销售录入客户收款(销售)

触发:客户发来银行水单、企微告知已汇款,或客户按里程碑付款。产出payments 新增一行(parent_type='sales_order');订单「已收 / 合计」数字增长。

  1. 销售在订单「付款」Tab 点「录入收款」。
  2. 填金额(订单币种为准)、付款类型(deposit / progress_payment / final_payment / other)、付款方式、银行流水号。
  3. 到账日按银行回单日期为准;不填默认今天。
  4. 确认后自动推企微卡片给销售群。

下游接力:见步骤 2(会计核销到发票)。回到销售手册 Quickstart 2.5

步骤 2:会计核销到发票 + 生成凭证(会计)

触发:销售 / 出纳录入收款,AR 侧有待分配金额。产出invoices.balance_due 递减;凭证 reference_type='customer_payment'

  1. 会计在 /dashboard/accounting/payments 找未核销收款,点「分配」。
  2. 弹窗按 FIFO 预填到该客户未结发票;金额或对账时可手工调整。
  3. 客户一笔付多张发票:逐张分配到目标 invoice_id;分配总额 = 收款金额。
  4. 确认后系统自动生成凭证(AR ↓ / 银行 ↑),过账到 GL。
scenarios/scene-3-allocate-payment.jpg

下游接力:见步骤 3(出纳银行对账)。回到会计手册 Quickstart 2.3

步骤 3:出纳银行对账 + 匹配流水(出纳)

触发:月末或每周对账日,银行 CSV 对账单下载完毕。产出bank_transactions 状态从 unmatchedmatched;账面 vs 银行差异 variance=0

  1. 出纳在 /dashboard/accounting/bank-reconciliation 选账户,点「导入银行流水」上传 CSV。
  2. 进「匹配」工作台,左侧 Bank / 右侧 Book 双栏;点「自动匹配」系统按金额 + 日期撮合。
  3. 剩余未匹配逐笔人工拖拽;差异由「银行手续费」或「汇差」补账。
  4. 确认 variance=0 后点「完成」,对账锁定。

下游接力:见步骤 4(多付款 / 退款特殊分支)。回到出纳手册 Quickstart 2.4

步骤 4:多付款退款 / 贷项单冲销 AR(销售 / 出纳 / 会计)

触发:客户多付、重复付款,或质量问题后协商退款。产出:退款记录(refunds)或贷项通知单(CN-)核销到发票。

  1. 多付款原路退回:销售在订单付款 Tab 走「退款」,原因选 overpayment;出纳执行网银退汇。
  2. 质量问题 / 部分退货:销售建贷项通知单,选目标发票、退款原因;勾选「退回库存」则库管收货入仓。
  3. 贷项单提交后,销售点「核销」选目标发票和金额;invoices.balance_due 减少对应金额。
  4. 会计在 /dashboard/accounting/journal-entries 复核凭证;跨期错误按 reverseJournalEntry 冲回再补录。

下游接力:回款流闭环。回到销售手册 异常回滚Quickstart 2.8出纳手册 Quickstart

场景 4:采购付款流

参与角色:采购、库管、QC、出纳、会计。典型周期:2-8 周。链路:询价 → PO → 到货 → QC → 采购发票 → 三单匹配 → 付款申请 → 付款。关键硬门槛:QC 未 accepted / partial 前付款按钮不可用。

步骤 1:采购发 RFQ 收供应商报价 → 授标(采购)

触发:销售订单缺料 / reorder-alert / 项目专项采购。产出:RFQ(发出)+ 多个供应商报价(SQ)+ 授标决策。

  1. /dashboard/purchasing/rfq 新建 RFQ,填标题、截止日、币种,加行项,多选供应商。
  2. 保存草稿后点「发送」,系统按供应商拆份发出,供应商回录报价进 SQ 列表。
  3. 进报价矩阵 Tab,按 SKU × 供应商对比,isLowest 高亮;可切「对比」tab 批量挑最低价。
  4. 点「授标」,按供应商分组预览 PO 草稿,点「生成 PO」。

下游接力:见步骤 2(PO 审批发出)。回到采购手册 Quickstart 2.1-2.2

步骤 2:PO 审批发出 + 里程碑付款计划(采购)

触发:授标后 PO 草稿生成,需要走审批发给供应商。产出:PO 状态 sent;付款里程碑拆段待出纳排期。

  1. 在 PO 详情审核头部信息、供应商、币种、汇率、行项单价。
  2. 点「提交审批」或直接「发送」(根据金额阈值决定)。
  3. 在里程碑 Tab 点「生成里程碑」按付款条款拆段;编辑各段到期日 / 比例。
  4. PO 状态推进到 sent,供应商按单备货。

下游接力:见步骤 3(到货 + QC + 入库)。回到采购手册 Quickstart 2.3-2.5

步骤 3:到货 + QC + 采购发票(库管 + QC + 采购)

触发:供应商发货,货到仓;供应商开发票寄达。产出:GR(receipt_number)+ QC 结论 + 采购发票(未 matched)。

  1. 库管在 PO 详情点「收货」,录入实收数量,生成 GR;批次默认 held
  2. QC 抽检:accepted 放行入主库;partial 按 FIFO 拆合格数量;rejected 批次保持 held 走退货。
  3. 采购在 /dashboard/purchasing/purchase-invoices 新建发票,选供应商 + PO,点「从 PO 导入」填 supplier_invoice_number
  4. 保存草稿,等待三单匹配。

下游接力:见步骤 4(三单匹配 + 过账)。回到采购手册 Quickstart 2.5-2.6库管手册 QuickstartQC 手册 Quickstart 2.1

步骤 4:三单匹配 + 采购发票过账(采购 + 会计)

触发:PO + GR + 采购发票三者就绪。产出:发票 match_status=matched;过账生成 AP 凭证。

  1. 在采购发票详情点「计算匹配」,系统比对每行数量 / 单价偏差。
  2. 匹配通过点「提交审批」;会计审核后点「过账」,写 GL(AP ↑ / 存货或费用 ↑)。
  3. 偏差大走异常:调整发票、追 GR、或走借项通知单(debit_notes)冲销。
scenarios/scene-4-three-way-match.jpg

下游接力:见步骤 5(付款申请 → 出纳执行)。回到采购手册 Quickstart 2.6会计手册 Quickstart

步骤 5:付款申请 + 财务审批(采购 + 财务经理)

触发:发票过账、到里程碑付款日,或供应商催款。产出:付款申请单(payment_request)审批通过,出现在出纳「待付」队列。

  1. 采购在 PO「付款」Tab 点「申请付款」,选里程碑或指定发票。
  2. 按金额走审批链:部门经理 → 财务 → (大额)CEO。
  3. 审批通过后付款申请状态 approved,出纳可在 /dashboard/accounting/cashier 看到。

下游接力:见步骤 6(出纳执行付款)。回到采购手册 Quickstart 2.7财务经理手册 Quickstart

步骤 6:出纳执行付款 + 会计核销应付(出纳 + 会计)

触发:付款申请 approved,到付款日。产出:银行付款完成;AP 凭证过账;供应商账期更新。

  1. 出纳在付款申请详情点「执行付款」,弹窗选付款账户、上传回单、填网银流水号。
  2. 外币付款填 exchangeRate + paymentAmountForeign;汇差由会计 FX 处理。
  3. 会计核销应付发票:AP ↓ / 银行 ↓;匹配银行对账流水。
  4. 长账期走对账单;供应商月度或季度汇总。

下游接力:采购付款流闭环。回到出纳手册 Quickstart 2.3会计手册 Quickstart

场景 5:月结流

参与角色:会计(执行)、财务经理(复核)、出纳 / 跟单 / 物流(协同清理)。典型周期:月末 2-5 个工作日。链路:期间 draft 清零 → 银行对账 → 调汇 → 结转预览 → 执行结账 → 报表。跨期发现错误需重开期间冲回再封。

步骤 1:清单据 draft + 银行对账归零(会计 + 出纳)

触发:月末前 2 天停接前月单据,准备结账。产出journal_entries 无 draft;所有银行账户 variance=0 对账完成。

  1. 会计筛 journal_entries.status='draft',逐单过账或驳回补录。
  2. 出纳把所有银行账户对账完成,未匹配流水走手工调整。
  3. 跟单清 shippeddelivered 的发货单;物流推 in_transit 过期 shipment。
  4. 销售批量把过期报价置 expired

下游接力:见步骤 2(外币调汇)。回到会计手册 Quickstart 2.5出纳手册 Quickstart

步骤 2:外币调汇 + AR/AP 未实现汇兑损益(会计)

触发:月末汇率发布,多币种 AR / AP 需要按新汇率折算。产出:调汇凭证(fx_revaluation);未实现汇差计入损益。

  1. 会计在 /dashboard/accounting/fx-gain-loss 看 AR / AP 未实现汇兑损益表。
  2. 点「Post 调汇凭证」,按科目生成凭证过账。
  3. 已实现汇差由收款时自动计算,月末核对 getRealizedFXGainLoss

下游接力:见步骤 3(期末存货 / 装船成本复核)。回到会计手册 Quickstart 2.6

步骤 3:装船成本 / 期末库存复核(物流 + 库管 + 会计)

触发:月末已发运 shipment 的 freight_cost + 关税 + 保险需分摊或挂账。产出:Landed cost 单据;期末库存估值锁定。

  1. 物流在 /dashboard/export/shipments 核对月内 shipment 的运费、保险录入完整。
  2. 采购在 /dashboard/purchasing/landed-cost 建 Landed cost 单(选关联 PO + 费用行)。
  3. 库管做月末盘点(可选)或核对 /dashboard/inventory/valuation 估值报表。
  4. 会计按 moving_average / fifo 方法复核存货成本并在期末锁定。

下游接力:见步骤 4(结转预览 + 执行结账)。回到物流手册 Quickstart 2.4库管手册 Quickstart

步骤 4:执行结账 + 报表 + 封定(财务经理 + 会计)

触发:步骤 1-3 都完成,试算平衡通过。产出:期间 closed;三大报表导出;下月开放。

  1. 会计在 /dashboard/accounting/fiscal-periods 点期间「结转预览」,看总收入 / 总费用 / 净利润。
  2. 执行 executeClosing('monthly') 生成结转凭证(损益过渡到本年利润)。
  3. 财务经理在 /dashboard/reports 出试算表 / 利润表 / 资产负债表 / 现金流;核数据无误。
  4. 财务经理点 updatePeriodStatus('closed', version) 封定期间;若发现错需 reverseClosing 重做。
scenarios/scene-5-closing-preview.jpg

下游接力:月结闭环;错误跨期调整另走专项流程。回到财务经理手册 Quickstart 2.4会计手册 Quickstart

场景 6:报销审批流

参与角色:员工(申请人)、部门经理、财务经理、出纳、会计。典型周期:3-10 天。链路:员工提单 → 部门经理审批 → 财务经理审批(>5000)→ 出纳付款 → 会计入账。

步骤 1:员工提交报销单(员工)

触发:员工出差 / 业务招待 / 样品快递发生费用,发票在手。产出:报销单草稿(expense_claim),状态 pending_manager

  1. 员工在 /dashboard/expenses 新建报销,按费用科目分类(差旅 / 招待 / 办公 / 其他)。
  2. 逐笔填金额、币种、发票号;上传发票照片。
  3. 填报销说明:关联客户 / 项目 / 订单(便于成本归属)。
  4. 点「提交」,状态进 pending_manager,推送部门经理。

下游接力:见步骤 2(部门经理审批)。回到财务经理手册 Quickstart 2.1

步骤 2:部门经理审批 → 财务审批(部门经理 + 财务经理)

触发:员工提交报销,进入审批队列。产出:状态推进到 pending_financeapproved;审批留痕。

  1. 部门经理在 /dashboard/expenses/approvalspending_manager 队列,核对费用合理性与预算。
  2. 通过 → 金额 ≤ 5000 直接 approved;> 5000 推到财务经理。
  3. 财务经理审批:> 50000 还要 director / > 200000 要 CEO。
  4. 可批量审批:勾多单点 batchApprove / batchReject。
scenarios/scene-6-expense-approval.jpg

下游接力:见步骤 3(出纳付款)。回到财务经理手册 Quickstart 2.1-2.2

步骤 3:出纳付款给员工(出纳)

触发:报销单 approved,到打款日。产出payments 一行(对员工);报销单 paid

  1. 出纳在 /dashboard/expenses/payments/dashboard/accounting/cashierapproved 待付列表。
  2. 勾选要付的报销单,批量发起网银打款或现金发放。
  3. 每笔回单上传,报销单状态推进到 paid
  4. 企微通知员工到账。

下游接力:见步骤 4(会计入账)。回到出纳手册 Quickstart 2.1

步骤 4:会计入账 + 归成本中心(会计)

触发:出纳付款完成,报销单 paid产出:凭证(reference_type='expense_claim');成本归到部门 / 项目 / 客户。

  1. 会计在 /dashboard/accounting/expense-claims 看已付待入账;系统按费用科目 + 成本中心自动生成凭证。
  2. 核对费用科目映射、币种、成本中心归属;调整后过账。
  3. 差旅报销按员工所在部门 / 报销关联项目归成本;月底看 profit-analysis 按项目 / 客户利润。
  4. 企微报销走企微内审(source='wecom'),不进 DaoSales 审批队列但同样入账——培训时提示两套并行。

下游接力:报销流闭环;月结时进场景 5。回到会计手册 Quickstart 2.2