Files
service/erp/sale/audit.go
kanade 46513b95ae refactor(accounting): 重构审核功能的数据结构
- 将审核人员数组替换为审核项目结构体
- 新增 AuditItem 结构体定义审批人ID和审批角色ID
- 更新 ArgsAuditSubmit 结构体字段命名和类型
- 添加 bean 包用于存放业务实体结构体
- 移除原有的审核人员ID数组字段
- 统一审核相关数据类型的定义方式
2026-06-08 17:32:32 +08:00

87 lines
2.0 KiB
Go

package sale
import (
"context"
"git.kumo.work/shama/service/client"
"git.kumo.work/shama/service/erp/bean"
)
type audit struct {
}
type ArgsAuditSubmit struct {
StaffId int64 // 操作人
SaleId int64 // 销售合同id
AuditItems []bean.AuditItem // 审核
}
// Submit @TITLE 提交审核
func (a *audit) Submit(ctx context.Context, args ArgsAuditSubmit) (err error) {
xClient, err := client.GetClient(a)
if err != nil {
return
}
reply := 0
err = xClient.Call(ctx, "Submit", args, &reply)
return
}
// Cancel @TITLE 提交审核
func (a *audit) Cancel(ctx context.Context, args ArgsAuditSubmit) (err error) {
xClient, err := client.GetClient(a)
if err != nil {
return
}
reply := 0
err = xClient.Call(ctx, "Cancel", args, &reply)
return
}
// Append @TITLE 追加商品审核
func (a *audit) Append(ctx context.Context, args ArgsAuditSubmit) (workflowId int64, err error) {
xClient, err := client.GetClient(a)
if err != nil {
return
}
err = xClient.Call(ctx, "Append", args, &workflowId)
return
}
type ArgsAuditChange struct {
StaffId int64 // 操作人
SaleId int64 // 销售合同id
AuditItems []bean.AuditItem // 审核
Products []ChangeProductItem // 产品信息
}
type ChangeProductItem struct {
Id int64 // 产品id
SaleCount int64 // 销售数量
}
// Change @TITLE 编辑商品审核
func (a *audit) Change(ctx context.Context, args ArgsAuditChange) (workflowId int64, err error) {
xClient, err := client.GetClient(a)
if err != nil {
return
}
err = xClient.Call(ctx, "Change", args, &workflowId)
return
}
type ArgsAuditBenefit struct {
StaffId int64 // 操作人
SaleId int64 // 销售合同id
AuditItems []bean.AuditItem // 审核
ArgsBenefitEdit
}
// Benefit @TITLE 效益测算审核
func (a *audit) Benefit(ctx context.Context, args ArgsAuditBenefit) (workflowId int64, err error) {
xClient, err := client.GetClient(a)
if err != nil {
return
}
err = xClient.Call(ctx, "Benefit", args, &workflowId)
return
}