From c78d05eff2026835f50de5f9a04ef4537b86f2f5 Mon Sep 17 00:00:00 2001 From: kanade Date: Sat, 10 Oct 2026 13:19:15 +0800 Subject: [PATCH] =?UTF-8?q?feat(erp):=20=E6=B7=BB=E5=8A=A0=E8=BD=AC?= =?UTF-8?q?=E8=B4=A6=E5=8A=9F=E8=83=BD=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在ERP服务中新增Transfer模块 - 为报销模块添加转账相关字段和结构 - 实现转账类型查询接口 - 添加报销单提交打款功能 - 定义转账相关的数据结构和参数 - 集成客户端调用支持转账业务逻辑 --- erp/erp.go | 1 + erp/expense/expense.go | 5 +++-- erp/expense/transfer.go | 25 +++++++++++++++++++++++++ erp/transfer.go | 24 ++++++++++++++++++++++++ 4 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 erp/expense/transfer.go diff --git a/erp/erp.go b/erp/erp.go index 627def8..bb6f040 100644 --- a/erp/erp.go +++ b/erp/erp.go @@ -20,4 +20,5 @@ type Erp struct { Request request Dict dict Ik3cloud ik3cloud + Transfer transfer } diff --git a/erp/expense/expense.go b/erp/expense/expense.go index eac44e1..2cbf486 100644 --- a/erp/expense/expense.go +++ b/erp/expense/expense.go @@ -1,6 +1,7 @@ package expense type Expense struct { - Cost cost - Audit audit + Cost cost + Audit audit + Transfer transfer } diff --git a/erp/expense/transfer.go b/erp/expense/transfer.go new file mode 100644 index 0000000..22810b4 --- /dev/null +++ b/erp/expense/transfer.go @@ -0,0 +1,25 @@ +package expense + +import ( + "context" + + "git.kumo.work/shama/service/client" +) + +type transfer struct { +} +type ArgsTransferSubmit struct { + StaffId int64 // 操作人 + ExpenseId int64 // 报销单id +} + +// Submit @TITLE 提交打款 +func (t *transfer) Submit(ctx context.Context, args ArgsTransferSubmit) (err error) { + xClient, err := client.GetClient(t) + if err != nil { + return + } + reply := 0 + err = xClient.Call(ctx, "Submit", args, &reply) + return +} diff --git a/erp/transfer.go b/erp/transfer.go index f3b2ac0..4f6c255 100644 --- a/erp/transfer.go +++ b/erp/transfer.go @@ -1 +1,25 @@ package erp + +import ( + "context" + + "git.kumo.work/shama/service/client" +) + +type transfer struct { +} + +type TransferItem struct { + Key string `json:"key"` + Name string `json:"name"` +} + +// Types @TITLE 打款类型 +func (t *template) Types(ctx context.Context) (reply []TransferItem, err error) { + xClient, err := client.GetClient(t) + if err != nil { + return + } + err = xClient.Call(ctx, "ExportData", 0, &reply) + return +}