Files
service/ik3cloud/payable.go
kanade ec74ebbca5 feat(erp): 新增发票号字段并优化应付单结构
- 在erp/payable.go中新增InvoiceSerial字段
- 重构ik3cloud/payable.go的ArgsPayableSave结构体
- 添加时间、币种、部门等业务字段
- 引入decimal包处理金额相关字段
- 新增PayableProductItem结构体定义商品明细
- 添加产品列表支持多商品应付单据
- 增加税率、税额等税务相关字段
- 补充含税与不含税金额计算字段
2025-12-18 11:57:33 +08:00

49 lines
1.5 KiB
Go

package ik3cloud
import (
"context"
"time"
"git.kumo.work/shama/service/client"
"github.com/shopspring/decimal"
)
type payable struct {
}
type ArgsPayableSave struct {
PayableId int64 // 应付单id
Number string // 编码
InvoiceSerial string // 发票号
CustomNumber string // 客户编码
FactoryNumber string // 工厂编码
Date time.Time // 日期
CurrencyNumber string // 币种
DepartmentNumber string // 部门
StaffCgyNumber string // 业务员
Rate decimal.Decimal // 汇率
Products []PayableProductItem // 商品
}
type PayableProductItem struct {
FactoryNumber string // 工厂编码
Number string // 商品编码
Name string // 商品名称
Count int64 // 数量
UnitPrice decimal.Decimal // 含税单价
AddTaxRate decimal.Decimal // 税率
ExTaxUnitPrice decimal.Decimal // 不含税单价
TaxAmount decimal.Decimal // 税额
UnitAmount decimal.Decimal // 含税金额
ExTaxUnitAmount decimal.Decimal // 不含税金额
}
// Save @TITLE 保存应付
func (p *payable) Save(ctx context.Context, args ArgsPayableSave) (entity Entity, err error) {
xClient, err := client.GetClient(p)
if err != nil {
return
}
err = xClient.Call(ctx, "Save", args, &entity)
return
}