Files
service/ik3cloud/receipt.go
kanade abf2ab190a feat(service): 添加收款单手续费字段
- 在Receipt结构体中新增Commission字段用于存储手续费信息
- 保持原有收款单功能不变,扩展数据模型支持手续费记录
2026-03-11 12:27:14 +08:00

57 lines
1.6 KiB
Go

package ik3cloud
import (
"context"
"time"
"git.kumo.work/shama/service/client"
"git.kumo.work/shama/service/ik3cloud/constant"
"github.com/shopspring/decimal"
)
type receipt struct {
}
type ArgsReceiptSave struct {
ReceiptId int64 // 收款单ID
Number string // 单据编号
ReceiptType constant.ReceiptType // 收款单类型
Date time.Time // 收款单日期
DepartmentNumber string // 部门编号
StaffXsyNumber string // 业务员编号
CurrencyNumber string // 币种编号
Rate decimal.Decimal // 汇率
Remarks string // 备注
Costs []ReceiptCost // 费用明细
CustomNumber string // 客户编号
PayCustomNumber string // 付款客户编号
}
type ReceiptCost struct {
InvoiceSerial string // 发票号
DepartmentNumber string // 部门编号
Amount decimal.Decimal // 金额
Remarks string // 备注
BankAccount string // 银行账户
Commission decimal.Decimal // 手续费
}
// Save @TITLE 保存收款单
func (r *receipt) Save(ctx context.Context, args ArgsReceiptSave) (entity Entity, err error) {
xClient, err := client.GetClient(r)
if err != nil {
return
}
err = xClient.Call(ctx, "Save", args, &entity)
return
}
// Cancel @TITLE 作废
func (r *receipt) Cancel(ctx context.Context, args Unique) (err error) {
xClient, err := client.GetClient(r)
if err != nil {
return
}
reply := 0
return xClient.Call(ctx, "Cancel", args, &reply)
}