付款单、收款单
这篇解决什么
采购入库怎么付、销售出库怎么收。读完能对上 erp_finance_payment / erp_finance_receipt 的明细 bizType,以及和财务模块收付款不是一套表。
默认端口 48080。先开模块见 ERP 功能设计。采购、销售单据见对应篇。结算账户在财务目录里先建。
示意图:付款核采购入库或采购退货。收款核销售出库或销售退货。不改库存。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 付款 | @RequestMapping("/erp/finance-payment") | ruoyi-office/yudao-module-erp/.../controller/admin/finance/ErpFinancePaymentController.java |
| 付款表 | erp_finance_payment / erp_finance_payment_item | ErpFinancePaymentDO |
| 收款 | @RequestMapping("/erp/finance-receipt") | ErpFinanceReceiptController |
| 收款表 | erp_finance_receipt / erp_finance_receipt_item | ErpFinanceReceiptDO |
| 结算账户 | @RequestMapping("/erp/account") | ErpAccountController,表 erp_account |
| 管理端 | 账户 / 付款 / 收款 | ruoyi-office-vben/apps/web-antd/src/views/erp/finance/ |
官方菜单:财务目录 2645。结算账户 2646(/erp/finance/account),付款单 2687(/erp/finance/payment),收款单 2694(/erp/finance/receipt)。
审核仍是 ErpAuditStatus 的 10 / 20,接口 PUT /update-status。
表头与明细
付款对供应商,收款对客户,都优先读 MDM。财务人员 financeUserId 是管理端用户。
| 名称 | 说明 | 仓库路径 |
|---|---|---|
accountId | 结算账户 | ErpFinancePaymentDO |
totalPrice | 合计,单位元 | 同上 |
discountPrice | 优惠,单位元 | 同上 |
paymentPrice | 表头:totalPrice - discountPrice | 同上 |
bizType | 明细业务类型 | ErpFinancePaymentItemDO |
bizId / bizNo | 对应入库单 / 出库单 | 同上 |
明细 ErpBizTypeEnum(这套数字不是库存 bizType):
| 名称 | 说明 | 仓库路径 |
|---|---|---|
PURCHASE_IN = 11 | 付采购入库 | ErpBizTypeEnum |
PURCHASE_RETURN = 12 | 采购退货冲减 | 同上 |
SALE_OUT = 21 | 收销售出库 | 同上 |
SALE_RETURN = 22 | 销售退货冲减 | 同上 |
ErpFinancePaymentServiceImpl 审核后回写采购入库已付。超额会 PURCHASE_IN_FAIL_PAYMENT_PRICE_EXCEED。已有付款单时,采购入库不能反审核。收款对销售出库同理。
三套「收付款」不要混
这页只动 erp_finance_*。独立财务模块是 yudao-module-finance 的 finance_*。CRM 回款是 crm_receivable。
明细行注释有的写「分」、表头写「元」。改金额时跟页面和 Service 加减走,不要两套单位对冲。
配置与操作
菜单:ERP → 财务 → 付款单(2687,/erp/finance/payment),收款单 2694(/erp/finance/receipt)。结算账户先在 2646(/erp/finance/account)建好。
付款对供应商、收款对客户,都从 MDM 选。明细挂采购入库或销售出库。保存后 10,PUT /update-status 成 20 才回写已付 / 已收。审核是 ErpAuditStatus,不是流程引擎。
已有付款单时,对应采购入库不能反审核。不要和财务模块 finance_*、CRM crm_receivable 混用。
