feat(erp): 添加预付款功能支持
- 在Request结构体中新增Prepaid字段 - 新增prepaid.go文件实现预付款相关操作 - 添加PrepaidItem结构体定义预付款项目字段 - 实现All方法用于获取费用列表 - 实现Add方法用于添加预付款记录 - 实现Edit方法用于编辑预付款记录 - 实现Delete方法用于删除预付款记录 - 定义ArgsPrepaidAdd和PrepaidAdd参数结构体 - 定义ArgsPrepaidEdit参数结构体用于编辑操作
This commit is contained in:
77
erp/request/prepaid.go
Normal file
77
erp/request/prepaid.go
Normal file
@@ -0,0 +1,77 @@
|
||||
package request
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"git.kumo.work/shama/service/client"
|
||||
"github.com/shopspring/decimal"
|
||||
)
|
||||
|
||||
type prepaid struct {
|
||||
}
|
||||
|
||||
type PrepaidItem struct {
|
||||
Id int64 `json:"id"`
|
||||
InvoiceSerial string `json:"invoiceSerial"`
|
||||
Amount decimal.Decimal `json:"amount"`
|
||||
Remark string `json:"remark"`
|
||||
CreatedAt *time.Time `json:"createdAt"`
|
||||
UpdatedAt *time.Time `json:"updatedAt"`
|
||||
}
|
||||
|
||||
// All @TITLE 获取费用
|
||||
func (c *prepaid) All(ctx context.Context, requestId int64) (reply []PrepaidItem, err error) {
|
||||
xClient, err := client.GetClient(c)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = xClient.Call(ctx, "All", requestId, &reply)
|
||||
return
|
||||
}
|
||||
|
||||
type ArgsPrepaidAdd struct {
|
||||
RequestId int64 // 付款申请单ID
|
||||
PrepaidAdd
|
||||
}
|
||||
|
||||
type PrepaidAdd struct {
|
||||
InvoiceSerial string // 发票编号
|
||||
Amount decimal.Decimal // 金额
|
||||
Remark string // 备注
|
||||
}
|
||||
|
||||
// Add @TITLE 添加费用
|
||||
func (c *prepaid) Add(ctx context.Context, args ArgsPrepaidAdd) (err error) {
|
||||
xClient, err := client.GetClient(c)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
reply := 0
|
||||
return xClient.Call(ctx, "Add", args, &reply)
|
||||
}
|
||||
|
||||
type ArgsPrepaidEdit struct {
|
||||
PrepaidId int64 // 费用ID
|
||||
PrepaidAdd
|
||||
}
|
||||
|
||||
// Edit @TITLE 编辑费用
|
||||
func (c *prepaid) Edit(ctx context.Context, args ArgsPrepaidEdit) (err error) {
|
||||
xClient, err := client.GetClient(c)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
reply := 0
|
||||
return xClient.Call(ctx, "Edit", args, &reply)
|
||||
}
|
||||
|
||||
// Delete @TITLE 删除费用
|
||||
func (c *prepaid) Delete(ctx context.Context, prepaidIds []int64) (err error) {
|
||||
xClient, err := client.GetClient(c)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
reply := 0
|
||||
return xClient.Call(ctx, "Delete", prepaidIds, &reply)
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package request
|
||||
|
||||
type Request struct {
|
||||
Cost cost
|
||||
Audit audit
|
||||
Cost cost
|
||||
Audit audit
|
||||
Prepaid prepaid
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user